update: 更新逻辑, 重构事件上报
Signed-off-by: huyufei <yufei.hu@castbox.fm>
parent
a1ad7b31de
commit
94def4fc3b
|
|
@ -11,6 +11,17 @@ namespace Guru
|
|||
replay
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 打点优先级
|
||||
/// </summary>
|
||||
public enum EventPriority
|
||||
{
|
||||
Emergence = 0,
|
||||
High = 5,
|
||||
Default = 10,
|
||||
Low = 15
|
||||
}
|
||||
|
||||
//打点常量定义
|
||||
public partial class Analytics
|
||||
{
|
||||
|
|
@ -134,6 +145,7 @@ namespace Guru
|
|||
public const string PropertyFirebaseId = "firebase_id"; // FirebaseID
|
||||
public const string PropertyGoogleAdId = "ad_id"; // Google AdId
|
||||
public const string PropertyAnalyticsExperimentalGroup = "guru_analytics_exp"; // Analytics Experimental Group
|
||||
public const string PropertyGuruSdkVersion = "sdk_version"; // GuruSDK 版本号
|
||||
|
||||
|
||||
public static HashSet<string> PredefinedMidWareProperties = new HashSet<string>()
|
||||
|
|
|
|||
|
|
@ -147,6 +147,12 @@ namespace Guru
|
|||
_propertiesManager.ReportIDFA(idfa);
|
||||
}
|
||||
|
||||
public static void SetGuruSdkVersion(string sdkVersion)
|
||||
{
|
||||
_propertiesManager.ReportGuruSdkVersion(sdkVersion);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
|
@ -296,7 +302,11 @@ namespace Guru
|
|||
_guruEventDriver.AddProperty(Analytics.PropertyIDFA, idfa);
|
||||
_firebaseEventDriver.AddProperty(Analytics.PropertyIDFA, idfa);
|
||||
}
|
||||
|
||||
public void ReportGuruSdkVersion(string sdkVersion)
|
||||
{
|
||||
_guruEventDriver.AddProperty(Analytics.PropertyGuruSdkVersion, sdkVersion);
|
||||
_firebaseEventDriver.AddProperty(Analytics.PropertyGuruSdkVersion, sdkVersion);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
|
|||
|
|
@ -149,25 +149,11 @@ namespace Guru
|
|||
/// </summary>
|
||||
/// <param name="level">总计完成的管卡数 (b_play)</param>
|
||||
/// <param name="data"></param>
|
||||
public static void LevelEndSuccess( int level, Dictionary<string, object> data)
|
||||
public static void TrackLevelEndSuccessEvent(LevelEndSuccessEventData eventData)
|
||||
{
|
||||
if (level > GuruSettings.Instance.AnalyticsSetting.LevelEndSuccessNum)
|
||||
if (eventData.level > GuruSettings.Instance.AnalyticsSetting.LevelEndSuccessNum)
|
||||
return;
|
||||
|
||||
string eventName = $"level_end_success_{level}";
|
||||
|
||||
var dict = data.ToDictionary(
|
||||
entry => entry.Key,
|
||||
entry => entry.Value);
|
||||
|
||||
dict["level"] = level;
|
||||
|
||||
TrackEvent(eventName, dict, new EventSetting()
|
||||
{
|
||||
EnableFirebaseAnalytics = true,
|
||||
EnableGuruAnalytics = true,
|
||||
EnableAdjustAnalytics = true
|
||||
});
|
||||
TrackEvent(eventData.eventName, eventData.eventData, eventData.eventSetting, eventData.priority);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -790,6 +776,44 @@ namespace Guru
|
|||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public class LevelEndSuccessEventData
|
||||
{
|
||||
public readonly int level;
|
||||
public readonly string eventName;
|
||||
public readonly Dictionary<string, object> eventData;
|
||||
public readonly Analytics.EventSetting eventSetting;
|
||||
public readonly int priority;
|
||||
|
||||
public LevelEndSuccessEventData()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public LevelEndSuccessEventData(int level, Dictionary<string, object> extra = null)
|
||||
{
|
||||
this.level = level;
|
||||
eventName = $"level_end_success_{level}";
|
||||
eventData = new Dictionary<string, object>();
|
||||
if (extra != null)
|
||||
{
|
||||
foreach (var key in extra.Keys)
|
||||
{
|
||||
eventData[key] = extra[key];
|
||||
}
|
||||
}
|
||||
eventData["level"] = level;
|
||||
eventSetting = new Analytics.EventSetting()
|
||||
{
|
||||
EnableFirebaseAnalytics = true,
|
||||
EnableGuruAnalytics = true,
|
||||
EnableAdjustAnalytics = true
|
||||
};
|
||||
priority = (int)EventPriority.Emergence;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue