远程配置加log、IV_RULES插屏展示逻辑、
This commit is contained in:
parent
e166aa143f
commit
c25bcd63e9
|
@ -319,16 +319,16 @@ public class AdsSDKManager : NormalSingleton<AdsSDKManager>
|
||||||
{
|
{
|
||||||
//1.获取远程配置
|
//1.获取远程配置
|
||||||
string json = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("IV_RULES");
|
string json = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("IV_RULES");
|
||||||
if (string.IsNullOrEmpty(json))
|
if (string.IsNullOrEmpty(json))
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
//2.解析配置
|
//2.解析配置
|
||||||
var dates = JsonConvert.DeserializeObject<IvRulesData[]>(json);
|
var dates = JsonConvert.DeserializeObject<IvRulesData[]>(json);
|
||||||
if (dates == null && dates.Length == 0)
|
if (dates == null && dates.Length == 0)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
//3.获取IVADType对应的配置
|
//3.获取IVADType对应的配置
|
||||||
IvRulesData ivRulesData = null;
|
IvRulesData ivRulesData = null;
|
||||||
foreach (var data in dates)
|
foreach (var data in dates)
|
||||||
|
@ -343,31 +343,32 @@ public class AdsSDKManager : NormalSingleton<AdsSDKManager>
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
//4.判断skip(次安装跳过几次触发不展示广告)
|
//4.判断skip(次安装跳过几次触发不展示广告)
|
||||||
int skipLevel = ivRulesData.skipLevel;
|
int skipLevel = ivRulesData.skipLevel;
|
||||||
int currentSkipLevel = PlayerPrefsUtils.GetPlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, 0);
|
int currentSkipLevel = PlayerPrefsUtils.GetPlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, 0);
|
||||||
LoggerUtils.Debug($"[SDK] skipLevel is {skipLevel}, currentSkipLevel is {currentSkipLevel}");
|
if (currentSkipLevel < skipLevel)
|
||||||
if (currentSkipLevel < skipLevel)
|
{
|
||||||
{
|
LoggerUtils.Debug($"[SDK] skipLevel limit");
|
||||||
PlayerPrefsUtils.SavePlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, currentSkipLevel + 1);
|
PlayerPrefsUtils.SavePlayerPrefsInt(IvRulesKey.KEY_SKIPLEVEL, currentSkipLevel + 1);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
//5.判断overLevel(没跳过几次触发)
|
//5.判断overLevel(没跳过几次触发)
|
||||||
int overLevel = ivRulesData.overLevel;
|
int overLevel = ivRulesData.overLevel;
|
||||||
int currentOverLevel = IvRulesConst.CurrentOverLevel;
|
int currentOverLevel = IvRulesConst.CurrentOverLevel;
|
||||||
LoggerUtils.Debug($"[SDK] overLevel is {overLevel}, currentOverLevel is {currentOverLevel}");
|
if (currentOverLevel < overLevel)
|
||||||
if (currentOverLevel < overLevel)
|
{
|
||||||
{
|
LoggerUtils.Debug($"[SDK] overLevel limit");
|
||||||
IvRulesConst.CurrentOverLevel++;
|
IvRulesConst.CurrentOverLevel++;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
//6.判断interval(广告时间间隔)
|
//6.判断interval(广告时间间隔)
|
||||||
int interval = ivRulesData.interval;
|
int interval = ivRulesData.interval;
|
||||||
long currentInterval = IvRulesConst.CurrentInterval;
|
long currentInterval = IvRulesConst.CurrentInterval;
|
||||||
long localTimestamp = TimeUtils.GetLocalTimestamp();
|
long localTimestamp = TimeUtils.GetLocalTimestamp();
|
||||||
LoggerUtils.Debug($"[SDK] interval is {interval}, currentInterval is {currentInterval}, localTimestamp is {localTimestamp}");
|
|
||||||
if (localTimestamp < currentInterval + (interval * 1000L))
|
if (localTimestamp < currentInterval + (interval * 1000L))
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[SDK] interval limit");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -52,12 +52,23 @@ public class AppSDKManager : MonoBehaviour
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowRewardAd(string position, string videoId, Action<double> callback = null)
|
public bool IsRewardAdReady()
|
||||||
|
{
|
||||||
|
return AdsSDKManager.Instance.IsRewardAdReady();;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ShowRewardAd(string position, Action<double> callback = null)
|
||||||
{
|
{
|
||||||
bool isRewardAdReady = AdsSDKManager.Instance.IsRewardAdReady();
|
bool isRewardAdReady = AdsSDKManager.Instance.IsRewardAdReady();
|
||||||
if (isRewardAdReady)
|
if (isRewardAdReady)
|
||||||
{
|
{
|
||||||
|
AdsSDKManager.Instance.ShowRewardAd(position, (isReward) =>
|
||||||
|
{
|
||||||
|
if (isReward)
|
||||||
|
{
|
||||||
|
//callback?.Invoke();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,15 +50,19 @@ public class FireBaseRemoteConfigManager : NormalSingleton<FireBaseRemoteConfigM
|
||||||
|
|
||||||
if (configValue.Source == ValueSource.RemoteValue)
|
if (configValue.Source == ValueSource.RemoteValue)
|
||||||
{
|
{
|
||||||
return (int)GetValueLong(newKey, configValue);
|
int value = (int)GetValueLong(newKey, configValue);
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {value}, No Is defaultValue");
|
||||||
|
return value;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
|
@ -80,16 +84,20 @@ public class FireBaseRemoteConfigManager : NormalSingleton<FireBaseRemoteConfigM
|
||||||
var configValue = FirebaseRemoteConfig.DefaultInstance.GetValue(newKey);
|
var configValue = FirebaseRemoteConfig.DefaultInstance.GetValue(newKey);
|
||||||
if (configValue.Source == ValueSource.RemoteValue)
|
if (configValue.Source == ValueSource.RemoteValue)
|
||||||
{
|
{
|
||||||
return GetValueStr(newKey, configValue);
|
string valueStr = GetValueStr(newKey, configValue);
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {valueStr}, No Is defaultValue");
|
||||||
|
return valueStr;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -111,15 +119,19 @@ public class FireBaseRemoteConfigManager : NormalSingleton<FireBaseRemoteConfigM
|
||||||
|
|
||||||
if (configValue.Source == ValueSource.RemoteValue)
|
if (configValue.Source == ValueSource.RemoteValue)
|
||||||
{
|
{
|
||||||
return GetValueBool(newKey, configValue);
|
bool valueBool = GetValueBool(newKey, configValue);
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {valueBool}, No Is defaultValue");
|
||||||
|
return valueBool;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
|
@ -142,15 +154,19 @@ public class FireBaseRemoteConfigManager : NormalSingleton<FireBaseRemoteConfigM
|
||||||
|
|
||||||
if (configValue.Source == ValueSource.RemoteValue)
|
if (configValue.Source == ValueSource.RemoteValue)
|
||||||
{
|
{
|
||||||
return (float)GetValueDouble(newKey, configValue);
|
float valueFloat = (float)GetValueDouble(newKey, configValue);
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {valueFloat}, No Is defaultValue");
|
||||||
|
return valueFloat;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
LoggerUtils.Debug($"[RemoteConfig] key is {key}, defaultValue is {defaultValue}, value is {defaultValue}, Is defaultValue");
|
||||||
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
Debug.LogError($"Failed to get Remote Config value for key '{key}': {e.Message}");
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue