diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs index 22f7989..e29ed7b 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs @@ -436,6 +436,40 @@ namespace WZ } #endregion + /// + /// 判断当前广告id的配置是否包含这个id + /// + /// + /// + /// + 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; + } + } + } } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobBannerAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobBannerAdManager.cs index 3a2df23..cc61a9a 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobBannerAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobBannerAdManager.cs @@ -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(); diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs index 84b72a4..6b951d0 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs @@ -49,6 +49,11 @@ namespace WZ onAdLoadFailed?.Invoke(adUnitId, error.GetCode(), error.GetMessage()); return; } + + if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Interstitial, adUnitId)) + { + return; + } LoggerUtils.Debug("Admob Interstitial ad loaded with response : " + ad.GetResponseInfo().ToString()); _interstitialAds[adUnitId] = 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(); } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs index b652688..ba08909 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs @@ -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) => { @@ -76,6 +81,11 @@ namespace WZ LoggerUtils.Debug("[Admob] Native ad failed to load an ad with error : " + error + " \n retryDelay :" + retryDelay); return; } + + if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId)) + { + return; + } AdsActionEvents.TrackAdLoaded(PlatformType.Admob, ad.GetResponseInfo().GetLoadedAdapterResponseInfo().AdSourceName, @@ -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); } + } } } \ No newline at end of file diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs index c74e854..7ef11c7 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs @@ -53,6 +53,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(); }