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);