diff --git a/Runtime/GuruAdjust/AdjustService.cs b/Runtime/GuruAdjust/AdjustService.cs index 8cd4012..4959ea7 100644 --- a/Runtime/GuruAdjust/AdjustService.cs +++ b/Runtime/GuruAdjust/AdjustService.cs @@ -84,7 +84,6 @@ namespace Guru config.setLogDelegate(log => LogI(LOG_TAG, log)); config.setEventSuccessDelegate(OnEventSuccessCallback); config.setEventFailureDelegate(OnEventFailureCallback); - config.setSessionFailureDelegate(OnSessionFailureCallback); config.setAttributionChangedDelegate(OnAttributionChangedCallback); #endif @@ -92,9 +91,6 @@ namespace Guru SetupInstance(); Adjust.start(config); - // 缓存标准属性 - _adjustId = Adjust.getAdid(); // 获取AdjustID - // 异步加载AdId FetchGoogleAdId(); @@ -165,6 +161,21 @@ namespace Guru #endregion #region 事件回调函数 + + /// + /// Session 启动后回调 + /// 回调中可以获取实际的 AdjustID + /// + /// + private static void OnSessionSuccessCallback(AdjustSessionSuccess sessionSuccessData) + { + LogI(LOG_TAG,$"{LOG_TAG} --- Session tracked successfully!"); + + var adid = sessionSuccessData.Adid; + _adjustId = adid; + _onSessionSuccessCallback?.Invoke(adid); + } + private static void OnAttributionChangedCallback(AdjustAttribution attributionData) { @@ -283,14 +294,6 @@ namespace Guru LogI(LOG_TAG, "WillRetry: " + eventFailureData.WillRetry.ToString()); } - private static void OnSessionSuccessCallback(AdjustSessionSuccess sessionSuccessData) - { - LogI(LOG_TAG,$"{LOG_TAG} --- Session tracked successfully!"); - - var adid = sessionSuccessData.Adid; - _onSessionSuccessCallback?.Invoke(adid); - } - private static void OnSessionFailureCallback(AdjustSessionFailure sessionFailureData) { LogI(LOG_TAG,"Session tracking failed!"); diff --git a/Runtime/GuruCore/Runtime/Analytics/Analytics.Custom.cs b/Runtime/GuruCore/Runtime/Analytics/Analytics.Custom.cs index 8260af5..d1f54a3 100644 --- a/Runtime/GuruCore/Runtime/Analytics/Analytics.Custom.cs +++ b/Runtime/GuruCore/Runtime/Analytics/Analytics.Custom.cs @@ -185,6 +185,8 @@ namespace Guru /// private static void FetchFirebaseId() { + if (!IsFirebaseReady) return; + FirebaseAnalytics.GetAnalyticsInstanceIdAsync() .ContinueWithOnMainThread(task => { diff --git a/Runtime/GuruCore/Runtime/Analytics/Analytics.cs b/Runtime/GuruCore/Runtime/Analytics/Analytics.cs index 35f2349..02c9e94 100644 --- a/Runtime/GuruCore/Runtime/Analytics/Analytics.cs +++ b/Runtime/GuruCore/Runtime/Analytics/Analytics.cs @@ -44,18 +44,17 @@ namespace Guru public static bool EnableDebugAnalytics; //允许Debug包上报打点 public static bool IsDebugMode => PlatformUtil.IsDebug(); + private static bool IsFirebaseReady => FirebaseUtil.IsFirebaseInitialized; private static bool IsEnable { get { //Analytics没有初始化不上报打点 - if (!_isInited) - return false; + if (!_isInited) return false; //Firebase服务没有初始化完成不上报打点 - if (!FirebaseUtil.IsFirebaseInitialized) - return false; + if (!IsFirebaseReady) return false; #if !UNITY_EDITOR //开发环境打点不上报 diff --git a/Runtime/GuruCore/Runtime/Firebase/FirebaseUtil.cs b/Runtime/GuruCore/Runtime/Firebase/FirebaseUtil.cs index 636d716..4ecbc7b 100644 --- a/Runtime/GuruCore/Runtime/Firebase/FirebaseUtil.cs +++ b/Runtime/GuruCore/Runtime/Firebase/FirebaseUtil.cs @@ -118,9 +118,7 @@ namespace Guru string fbAppId = GuruSettings.Instance.IPMSetting.FacebookAppId; if (!string.IsNullOrEmpty(IPMConfig.ADJUST_ID)) - { ReportAdjustId(IPMConfig.ADJUST_ID); // 二次启动后,若有值则立即上报属性 - } AdjustService.StartService(appToken, fbAppId, OnGetAdjustId, OnAdjustDeeplinkCallback);