diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs index cebad05..846dc04 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs @@ -319,16 +319,16 @@ public class AdsSDKManager : NormalSingleton { //1.获取远程配置 string json = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("IV_RULES"); - if (string.IsNullOrEmpty(json)) - { - return true; - } - //2.解析配置 - var dates = JsonConvert.DeserializeObject(json); - if (dates == null && dates.Length == 0) - { - return true; - } + if (string.IsNullOrEmpty(json)) + { + return true; + } + //2.解析配置 + var dates = JsonConvert.DeserializeObject(json); + if (dates == null && dates.Length == 0) + { + return true; + } //3.获取IVADType对应的配置 IvRulesData ivRulesData = null; foreach (var data in dates) @@ -343,31 +343,32 @@ public class AdsSDKManager : NormalSingleton return true; } //4.判断skip(次安装跳过几次触发不展示广告) - int skipLevel = ivRulesData.skipLevel; - int currentSkipLevel = PlayerPrefsUtils.GetPlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, 0); - LoggerUtils.Debug($"[SDK] skipLevel is {skipLevel}, currentSkipLevel is {currentSkipLevel}"); - if (currentSkipLevel < skipLevel) - { - PlayerPrefsUtils.SavePlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, currentSkipLevel + 1); - return false; - } - //5.判断overLevel(没跳过几次触发) - int overLevel = ivRulesData.overLevel; - int currentOverLevel = IvRulesConst.CurrentOverLevel; - LoggerUtils.Debug($"[SDK] overLevel is {overLevel}, currentOverLevel is {currentOverLevel}"); - if (currentOverLevel < overLevel) - { - IvRulesConst.CurrentOverLevel++; - return false; - } + int skipLevel = ivRulesData.skipLevel; + int currentSkipLevel = PlayerPrefsUtils.GetPlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, 0); + if (currentSkipLevel < skipLevel) + { + LoggerUtils.Debug($"[SDK] skipLevel limit"); + PlayerPrefsUtils.SavePlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, currentSkipLevel + 1); + return false; + } + //5.判断overLevel(没跳过几次触发) + int overLevel = ivRulesData.overLevel; + int currentOverLevel = IvRulesConst.CurrentOverLevel; + if (currentOverLevel < overLevel) + { + LoggerUtils.Debug($"[SDK] overLevel limit"); + IvRulesConst.CurrentOverLevel++; + return false; + } //6.判断interval(广告时间间隔) int interval = ivRulesData.interval; long currentInterval = IvRulesConst.CurrentInterval; long localTimestamp = TimeUtils.GetLocalTimestamp(); - LoggerUtils.Debug($"[SDK] interval is {interval}, currentInterval is {currentInterval}, localTimestamp is {localTimestamp}"); + if (localTimestamp < currentInterval + (interval * 1000L)) { + LoggerUtils.Debug($"[SDK] interval limit"); return false; } diff --git a/Assets/Script/SDKManager/AppSDKManager.cs b/Assets/Script/SDKManager/AppSDKManager.cs index f96c27b..aafc3ff 100644 --- a/Assets/Script/SDKManager/AppSDKManager.cs +++ b/Assets/Script/SDKManager/AppSDKManager.cs @@ -52,12 +52,23 @@ public class AppSDKManager : MonoBehaviour } } - public void ShowRewardAd(string position, string videoId, Action callback = null) + public bool IsRewardAdReady() + { + return AdsSDKManager.Instance.IsRewardAdReady();; + } + + public void ShowRewardAd(string position, Action callback = null) { bool isRewardAdReady = AdsSDKManager.Instance.IsRewardAdReady(); if (isRewardAdReady) { - + AdsSDKManager.Instance.ShowRewardAd(position, (isReward) => + { + if (isReward) + { + //callback?.Invoke(); + } + }); } } } diff --git a/Assets/Script/SDKManager/FirebaseManager/FireBaseRemoteConfigManager.cs b/Assets/Script/SDKManager/FirebaseManager/FireBaseRemoteConfigManager.cs index e12f4c3..9751311 100644 --- a/Assets/Script/SDKManager/FirebaseManager/FireBaseRemoteConfigManager.cs +++ b/Assets/Script/SDKManager/FirebaseManager/FireBaseRemoteConfigManager.cs @@ -50,15 +50,19 @@ public class FireBaseRemoteConfigManager : NormalSingleton