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();
}