admob广告获取线上广告ID后处理已经加载完的无效广告
This commit is contained in:
parent
f4a1f2e1e2
commit
cc00dd82c2
|
@ -436,6 +436,40 @@ namespace WZ
|
|||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 判断当前广告id的配置是否包含这个id
|
||||
/// </summary>
|
||||
/// <param name="adsType"></param>
|
||||
/// <param name="adUnitId"></param>
|
||||
/// <returns></returns>
|
||||
public bool FindAdsID(AdsType adsType, string adUnitId)
|
||||
{
|
||||
if (adsType == AdsType.Rewarded)
|
||||
{
|
||||
return _rewardedAdUnits.Contains(adUnitId);
|
||||
}
|
||||
else if (adsType == AdsType.Interstitial)
|
||||
{
|
||||
return _interstitialAdUnits.Contains(adUnitId);
|
||||
}
|
||||
else if (adsType == AdsType.Native)
|
||||
{
|
||||
return _nativeAdUnits.Contains(adUnitId);
|
||||
}
|
||||
else if (adsType == AdsType.Splash)
|
||||
{
|
||||
return _splashAdUnits.Contains(adUnitId);
|
||||
}
|
||||
else if (adsType == AdsType.Banner)
|
||||
{
|
||||
return _bannerAdUnits.Contains(adUnitId);
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -91,6 +91,10 @@ namespace WZ
|
|||
|
||||
public void LoadAd(string adUnitId)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (_bannerAds.TryGetValue(adUnitId, out var ad))
|
||||
{
|
||||
ad.LoadAd(new AdRequest());
|
||||
|
@ -122,6 +126,11 @@ namespace WZ
|
|||
// 显示特定广告位的广告
|
||||
private void ShowAd(string adUnitId)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (_bannerAds.TryGetValue(adUnitId, out var ad))
|
||||
{
|
||||
ad.Show();
|
||||
|
|
|
@ -50,6 +50,11 @@ namespace WZ
|
|||
return;
|
||||
}
|
||||
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Interstitial, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
LoggerUtils.Debug("Admob Interstitial ad loaded with response : " + ad.GetResponseInfo().ToString());
|
||||
_interstitialAds[adUnitId] = ad;
|
||||
_adRevenueCache[adUnitId] = AdmobUtils.GetInterstitialAdEcpm(ad);
|
||||
|
@ -128,6 +133,10 @@ namespace WZ
|
|||
// 检查特定广告位是否可用
|
||||
private bool IsAdAvailable(string adUnitId)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Interstitial, adUnitId))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return _interstitialAds.TryGetValue(adUnitId, out var ad) && ad.CanShowAd();
|
||||
}
|
||||
|
||||
|
|
|
@ -39,6 +39,11 @@ namespace WZ
|
|||
public void LoadAd(string adUnitId)
|
||||
{
|
||||
LoggerUtils.Debug($"[Admob] Native Ad unit {adUnitId} load start");
|
||||
//判断在线参数是否包含这个id
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
NativeOverlayAd.Load(adUnitId, new AdRequest(), new NativeAdOptions(), (NativeOverlayAd ad, LoadAdError error) =>
|
||||
{
|
||||
|
@ -77,6 +82,11 @@ namespace WZ
|
|||
return;
|
||||
}
|
||||
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
AdsActionEvents.TrackAdLoaded(PlatformType.Admob,
|
||||
ad.GetResponseInfo().GetLoadedAdapterResponseInfo().AdSourceName,
|
||||
adUnitId,
|
||||
|
@ -143,6 +153,11 @@ namespace WZ
|
|||
// 显示特定广告位的广告
|
||||
public void ShowAd(NativeAdPosition position, string adUnitId)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
LoggerUtils.Debug($"[Admob] Native ad ShowAd start {adUnitId} , {position}");
|
||||
|
||||
if (_nativeAds.TryGetValue(adUnitId, out var ad))
|
||||
|
@ -292,6 +307,7 @@ namespace WZ
|
|||
_adStartLoadTimes.Remove(key);
|
||||
_adRevenueCache.Remove(key);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -54,6 +54,11 @@ namespace WZ
|
|||
LoggerUtils.Debug("[Admob] rewarded ad loaded with response : " + ad.GetResponseInfo().ToString()+"revenue:"+AdmobUtils.GetRewardedAdEcpm(ad));
|
||||
LoggerUtils.Debug("[Admob] rewarded ad revenue : " +AdmobUtils.GetRewardedAdEcpm(ad));
|
||||
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Rewarded, adUnitId))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
_rewardedAds[adUnitId] = ad;
|
||||
_adRevenueCache[adUnitId] = AdmobUtils.GetRewardedAdEcpm(ad);
|
||||
|
||||
|
@ -128,6 +133,10 @@ namespace WZ
|
|||
// 检查特定广告位是否可用
|
||||
private bool IsAdAvailable(string adUnitId)
|
||||
{
|
||||
if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Rewarded, adUnitId))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return _rewardedAds.TryGetValue(adUnitId, out var ad) && ad.CanShowAd();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue