diff --git a/Runtime/GuruCore/Runtime/Ads/ADServiceBase.cs b/Runtime/GuruCore/Runtime/Ads/ADServiceBase.cs index ec606b5..e8fae02 100644 --- a/Runtime/GuruCore/Runtime/Ads/ADServiceBase.cs +++ b/Runtime/GuruCore/Runtime/Ads/ADServiceBase.cs @@ -171,16 +171,26 @@ namespace Guru { if (adInfo == null) return; - // #1. ad_impression - OnAdImpression(adInfo); - - // #2. tch_ad_rev_roas calculation - double revenue = adInfo.Revenue; - CalcTaichi001Value(revenue); - CalcTaichi02Value(revenue); - - // #3. Adjust ad_revenue - AdjustService.TrackADRevenue(adInfo); + try + { + Log.I( $"[ADRevenue] - adUnitId:{adUnitId}, Revenue:{adInfo?.Revenue : 0}"); + + // #1 ad_impression + OnAdImpression(adInfo); + + // #2 tch_001 + double revenue = adInfo.Revenue; + CalcTaichi001Value(revenue); + CalcTaichi02Value(revenue); + + // #3 adjust_ad_revenue + AdjustService.TrackADRevenue(adInfo); + + } + catch (Exception ex) + { + Analytics.LogCrashlytics(ex); + } } diff --git a/Runtime/GuruCore/Runtime/IPM/Scripts/RequestData/DeviceData.cs b/Runtime/GuruCore/Runtime/IPM/Scripts/RequestData/DeviceData.cs index f200c90..7d4727c 100644 --- a/Runtime/GuruCore/Runtime/IPM/Scripts/RequestData/DeviceData.cs +++ b/Runtime/GuruCore/Runtime/IPM/Scripts/RequestData/DeviceData.cs @@ -11,7 +11,8 @@ namespace Guru public class DeviceData { private const string PUSH_TYPE_FCM = "FCM"; - + public bool pushNotificationEnable; //必填,默认true,发送消息的总开关 + public string deviceId; //必填,设备唯一ID public string uid; //必填,用户唯一ID,授权结果返回的uid public string androidId; //android设备有效 @@ -27,7 +28,6 @@ namespace Guru public string brand; //手机品牌 public string model; //手机品牌下的手机型号 public string timezone; //必填,时区,用于按照当地时间发推送消息,如America/Chicago - public bool pushNotificationEnable; //必填,默认true,发送消息的总开关 public string firebaseAppInstanceId; // 可选, firebase应用实例id public string idfa; // 可选, ios广告id public string adid; // 可选, adjust id @@ -41,7 +41,8 @@ namespace Guru { IPMConfig.IPM_UUID = IDHelper.GenUUID(IPMConfig.IPM_UID); } - + pushNotificationEnable = true; + deviceId = IPMConfig.IPM_DEVICE_ID; uid = IPMConfig.IPM_UID; androidId = SystemInfo.deviceUniqueIdentifier; // Unity get AndroidID @@ -57,7 +58,6 @@ namespace Guru brand = IPMConfig.IPM_BRAND; model = IPMConfig.IPM_MODEL; timezone = IPMConfig.IPM_TIMEZONE; - pushNotificationEnable = true; firebaseAppInstanceId = IPMConfig.FIREBASE_ID; idfa = IPMConfig.ADJUST_IDFA; adid = IPMConfig.ADJUST_ADID; diff --git a/Runtime/GuruCore/Runtime/IPM/Scripts/Requests/DeviceInfoUploadRequest.cs b/Runtime/GuruCore/Runtime/IPM/Scripts/Requests/DeviceInfoUploadRequest.cs index 7644f74..7b7a56b 100644 --- a/Runtime/GuruCore/Runtime/IPM/Scripts/Requests/DeviceInfoUploadRequest.cs +++ b/Runtime/GuruCore/Runtime/IPM/Scripts/Requests/DeviceInfoUploadRequest.cs @@ -12,11 +12,13 @@ namespace Guru /// public class DeviceInfoUploadRequest : RequestBase { + private bool _isPushEnabled = true; protected override string RequestURL => IPMConfig.IPM_URL + "device/api/v1/devices"; protected override UnityWebRequest CreateRequest() { DeviceData deviceData = new DeviceData(); + deviceData.pushNotificationEnable = _isPushEnabled; this.Log($"send deviceData:{deviceData}"); var request = new UnityWebRequest(RequestURL, "POST"); request.uploadHandler = new UploadHandlerRaw(Encoding.UTF8.GetBytes(JsonUtility.ToJson(deviceData))); @@ -32,5 +34,18 @@ namespace Guru this.Log("@@@ Send OK!"); IPMConfig.IS_UPLOAD_DEVICE_SUCCESS = true; } + + /// + /// 设置是否打开推送 + /// + /// + /// + public DeviceInfoUploadRequest SetPushEnabled(bool value = true) + { + _isPushEnabled = value; + return this; + } + + } } \ No newline at end of file