From 37e00c0bede581ea8ceb397e0cf2858cb8180a99 Mon Sep 17 00:00:00 2001 From: luojian Date: Thu, 18 Sep 2025 17:37:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E6=97=A5=E5=BF=97=EF=BC=8C=E5=9C=A8?= =?UTF-8?q?=E9=9A=90=E8=97=8F=E4=B8=80=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AdmobAdsManager/AdmobNativeAdManager.cs | 37 ++++++++++++++++--- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs index 2d9d712..8f2d9b7 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs @@ -233,10 +233,33 @@ namespace WZ // and anchored to the bottom of the screne. ad.RenderTemplate(style, new AdSize(position.Width, position.Height), position.X, position.Y); + var showNativePosition = showingNativeAds[adUnitId]; + + + var lastAdResponseId = lastAd?.GetResponseInfo()?.GetResponseId(); + var lastShowAdResponseId = lastShowAd?.GetResponseInfo()?.GetResponseId(); + var lastShowAdResponseId2 = showNativePosition?.NativeOverlayAd?.GetResponseInfo()?.GetResponseId(); + + var showAdResponseId = ad.GetResponseInfo()?.GetResponseId(); + + LoggerUtils.Debug( + $"[Admob] Native ad ShowAd [showingNativeAds] {adUnitId} , lastAdResponseId = {lastAdResponseId} , lastShowAdResponseId = {lastShowAdResponseId} , lastShowAdResponseId2 = {lastShowAdResponseId2} , showAdResponseId = {showAdResponseId}"); + showingNativeAds[adUnitId] = new ShowNativePosition(ad, position); ad.Show(); - lastAd?.Hide(); - lastShowAd?.Hide(); + + try + { + lastAd?.Hide(); + lastShowAd?.Hide(); + showNativePosition?.NativeOverlayAd?.Hide(); + } + catch (Exception e) + { + LoggerUtils.Error($"[Admob] Native ad Hide fail {adUnitId} , e : {e.Message}"); + } + + TimingRefresh(adUnitId); } } @@ -365,8 +388,9 @@ namespace WZ { foreach (var key in showingNativeAds.Keys.ToList()) { - LoggerUtils.Debug($"[Admob] Native ad removing NativeAd {adUnitId}"); - showingNativeAds[key].NativeOverlayAd.Hide(); + var ad = showingNativeAds[key].NativeOverlayAd; + LoggerUtils.Debug($"[Admob] Native ad removing [showingNativeAds] {adUnitId} , ad {ad.GetResponseInfo()?.GetResponseId()}"); + ad.Hide(); // 从字典中删除元素 showingNativeAds.Remove(key); LoadAd(key); @@ -377,8 +401,9 @@ namespace WZ if (showingNativeAds.TryGetValue(adUnitId, out var tempAd)) { - LoggerUtils.Debug($"[Admob] Native ad removing NativeAd {adUnitId}"); - tempAd.NativeOverlayAd.Hide(); + var ad = tempAd.NativeOverlayAd; + LoggerUtils.Debug($"[Admob] Native ad removing [showingNativeAds] {adUnitId} , ad {ad.GetResponseInfo()?.GetResponseId()}"); + ad.Hide(); showingNativeAds.Remove(adUnitId); LoadAd(adUnitId); }