143 lines
4.3 KiB
C#
143 lines
4.3 KiB
C#
|
|
using System;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using UnityEngine;
|
||
|
|
using UnityEngine.UI;
|
||
|
|
|
||
|
|
namespace Guru
|
||
|
|
{
|
||
|
|
public class GuruAnalyticsDemo: MonoBehaviour
|
||
|
|
{
|
||
|
|
[SerializeField] private bool _isDebug = true;
|
||
|
|
[SerializeField] private Button _btnInitSDK;
|
||
|
|
[SerializeField] private Button _btnStatus;
|
||
|
|
[SerializeField] private Button _btnUserProperties;
|
||
|
|
[SerializeField] private Button _btnEvents;
|
||
|
|
[SerializeField] private Button _btnEvents2;
|
||
|
|
[SerializeField] private Button _btnReport;
|
||
|
|
[SerializeField] private Button _btnTestCrash;
|
||
|
|
|
||
|
|
// ----------- All Status IDs -----------
|
||
|
|
private static readonly string AdjustID = "e35b41522140fa2db9089ef3c78eb8f9";
|
||
|
|
private static readonly string FirebaseID = "b7ab5fc399a7bc8725c004943fa82837";
|
||
|
|
private static readonly string UID = "BS-YYYYF";
|
||
|
|
private static readonly string AdID = "dda3cc2b-5a5e-44cb-8a59-4a0b1b3780fd";
|
||
|
|
private static readonly string DeviceID = "e2fb3c5a4c36473648c989bd86a41153";
|
||
|
|
private static readonly string AppID = "";
|
||
|
|
private static readonly string DeviceInfo = "";
|
||
|
|
|
||
|
|
|
||
|
|
private static readonly string ScreenName = "MainMenu";
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
private void Awake()
|
||
|
|
{
|
||
|
|
_btnInitSDK.onClick.AddListener(OnClickInit);
|
||
|
|
_btnStatus.onClick.AddListener(OnClickStatus);
|
||
|
|
_btnUserProperties.onClick.AddListener(OnClickUserProperties);
|
||
|
|
_btnEvents.onClick.AddListener(OnClickEvents);
|
||
|
|
_btnEvents2.onClick.AddListener(OnClickEvents2);
|
||
|
|
_btnReport.onClick.AddListener(OnClickReport);
|
||
|
|
_btnTestCrash.onClick.AddListener(OnClickTestCrash);
|
||
|
|
#if !UNITY_IOS
|
||
|
|
_btnTestCrash.gameObject.SetActive(false);
|
||
|
|
#endif
|
||
|
|
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
#region Button Callbacks
|
||
|
|
|
||
|
|
|
||
|
|
private void OnClickInit()
|
||
|
|
{
|
||
|
|
Debug.Log($"---- [DEMO] Call Analytics init");
|
||
|
|
GuruAnalytics.Init(AppID, DeviceInfo, OnGuruAnalyticsInitComplete, _isDebug);
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnGuruAnalyticsInitComplete()
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnClickStatus()
|
||
|
|
{
|
||
|
|
Debug.Log($"---- [DEMO] Report Stats IDs: UID:{UID} DeviceID:{DeviceID} FirebaseID:{FirebaseID} AdID:{AdID} AdjustID:{AdjustID}");
|
||
|
|
GuruAnalytics.Instance.SetUid(UID);
|
||
|
|
GuruAnalytics.Instance.SetDeviceId(DeviceID);
|
||
|
|
GuruAnalytics.Instance.SetFirebaseId(FirebaseID);
|
||
|
|
GuruAnalytics.Instance.SetAdId(AdID);
|
||
|
|
GuruAnalytics.Instance.SetAdjustId(AdjustID);
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnClickUserProperties()
|
||
|
|
{
|
||
|
|
string item_category = "main";
|
||
|
|
int level = 7;
|
||
|
|
Debug.Log($"---- [DEMO] Call SetUserProperty: item_category:{item_category} level:{level}");
|
||
|
|
GuruAnalytics.Instance.SetUserProperty("item_category", item_category);
|
||
|
|
GuruAnalytics.Instance.SetUserProperty("level", level.ToString());
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnClickEvents()
|
||
|
|
{
|
||
|
|
Debug.Log($"---- [DEMO] Report Screen: {ScreenName}");
|
||
|
|
GuruAnalytics.Instance.SetScreen(ScreenName);
|
||
|
|
|
||
|
|
string eventName = "user_get_coin";
|
||
|
|
Dictionary<string, dynamic> data = new Dictionary<string, dynamic>()
|
||
|
|
{
|
||
|
|
{ "level", 7 },
|
||
|
|
{ "user_coin", 105L },
|
||
|
|
{ "win_rate", 21.25f },
|
||
|
|
{ "b_level", 7 },
|
||
|
|
{ "result", "retry" }
|
||
|
|
};
|
||
|
|
|
||
|
|
string s = "---- Data ----\n";
|
||
|
|
foreach (var k in data.Keys)
|
||
|
|
{
|
||
|
|
s += $"-- K:{k} V:{data[k]}\n";
|
||
|
|
}
|
||
|
|
Debug.Log(s);
|
||
|
|
|
||
|
|
Debug.Log($"---- [DEMO] Call LogEvent");
|
||
|
|
GuruAnalytics.Instance.LogEvent(eventName, data);
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnClickEvents2()
|
||
|
|
{
|
||
|
|
string eventName = "user_data_loaded";
|
||
|
|
GuruAnalytics.Instance.LogEvent(eventName);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
private void OnClickReport()
|
||
|
|
{
|
||
|
|
GuruAnalytics.Instance.ReportEventSuccessRate();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
private void OnClickTestCrash()
|
||
|
|
{
|
||
|
|
#if UNITY_IOS
|
||
|
|
Debug.Log($"--> OnClickTestCrash");
|
||
|
|
GuruAnalytics.TestCrash();
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
#endregion
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|