Compare commits
2 Commits
d90bb4c332
...
567c688b80
Author | SHA1 | Date |
---|---|---|
|
567c688b80 | |
|
84eeb3c191 |
|
@ -64,11 +64,15 @@ namespace WZ
|
|||
LoggerUtils.Debug($"[Admob] Native Ad unit {adUnitId} load end, timingRefresh {timingRefresh}. {ad} error {error}");
|
||||
if (error != null || ad == null)
|
||||
{
|
||||
if (!_retryCounters.TryAdd(adUnitId, 0))
|
||||
if (!timingRefresh)
|
||||
{
|
||||
_retryCounters[adUnitId]++;
|
||||
if (!_retryCounters.TryAdd(adUnitId, 0))
|
||||
{
|
||||
_retryCounters[adUnitId]++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var adSource = "";
|
||||
if (ad != null)
|
||||
{
|
||||
|
@ -89,8 +93,21 @@ namespace WZ
|
|||
Time.realtimeSinceStartup - _adStartLoadTimes[adUnitId],
|
||||
reason);
|
||||
|
||||
// 定时任务的刷新,由定时任务自己去刷新
|
||||
if (timingRefresh)
|
||||
{
|
||||
if (!showingNativeAds.ContainsKey(adUnitId))
|
||||
{
|
||||
LoggerUtils.Debug($"[Admob] Native Ad unit {adUnitId}, 已经隐藏了,失败了也不需要在重新load了");
|
||||
return;
|
||||
}
|
||||
|
||||
TimingRefresh(adUnitId);
|
||||
return;
|
||||
}
|
||||
|
||||
var retryDelay = Math.Pow(2, Math.Min(6, _retryCounters[adUnitId]));
|
||||
TimerUtils.Instance.DelayExecute((float)retryDelay, () => { LoadAd(adUnitId, timingRefresh); });
|
||||
TimerUtils.Instance.DelayExecute((float)retryDelay, () => { LoadAd(adUnitId); });
|
||||
LoggerUtils.Error($"[Admob] Native Ad unit {adUnitId}, timingRefresh {timingRefresh} ad failed to load an ad with error : " + error + " \n retryDelay :" + retryDelay);
|
||||
return;
|
||||
}
|
||||
|
@ -155,12 +172,18 @@ namespace WZ
|
|||
{
|
||||
if (showingNativeAds.TryGetValue(adUnitId, out var showing))
|
||||
{
|
||||
var showingNativeOverlayAd = showing.NativeOverlayAd;
|
||||
if (showingNativeOverlayAd != tempAd)
|
||||
{
|
||||
LoggerUtils.Error("[Admob] Native ad Error!!!! showing.NativeOverlayAd != tempAd");
|
||||
}
|
||||
|
||||
LoggerUtils.Warning("[Admob] Native ad timing refresh , show ad");
|
||||
ShowAd(showing.Position, adUnitId, tempAd);
|
||||
ShowAd(showing.Position, adUnitId, tempAd, showingNativeOverlayAd);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoggerUtils.Warning($"[Admob] Native ad timing refresh , show fail , showing native ads not ad unit id , {adUnitId}");
|
||||
LoggerUtils.Warning($"[Admob] Native ad timing refresh , show fail , showing native ads not ad unit id , {adUnitId} , 广告已经隐藏了,刷新成功,不需要再去显示出来");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -180,7 +203,7 @@ namespace WZ
|
|||
}
|
||||
|
||||
// 显示特定广告位的广告
|
||||
public void ShowAd(NativeAdPosition position, string adUnitId, NativeOverlayAd lastAd = null)
|
||||
public void ShowAd(NativeAdPosition position, string adUnitId, NativeOverlayAd lastAd = null, NativeOverlayAd lastShowAd = null)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId))
|
||||
{
|
||||
|
@ -213,6 +236,7 @@ namespace WZ
|
|||
showingNativeAds[adUnitId] = new ShowNativePosition(ad, position);
|
||||
ad.Show();
|
||||
lastAd?.Hide();
|
||||
lastShowAd?.Hide();
|
||||
TimingRefresh(adUnitId);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue