From d5ed16b469a591bc1cfaead347176ad64566e395 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=89=E5=B3=B0?= Date: Fri, 12 Sep 2025 15:56:39 +0800 Subject: [PATCH] =?UTF-8?q?native=E5=B9=BF=E5=91=8A=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E4=B8=8D=E6=8E=89=E9=97=AE=E9=A2=98=20=E7=AB=9E=E4=BB=B7?= =?UTF-8?q?=E6=8F=92=E5=B1=8F=E4=B8=8D=E5=8F=97=E8=A7=84=E5=88=99=E5=BD=B1?= =?UTF-8?q?=E5=93=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AdmobAdsManager/AdmobAdsManager.cs | 3 ++- .../AdmobAdsManager/AdmobNativeAdManager.cs | 7 +++-- .../SDKManager/AdsSDKManager/AdsSDKManager.cs | 1 + Assets/Script/SDKManager/RushSDKManager.cs | 26 +++++++++++++++++-- Assets/StreamingAssets/build_info | 2 +- Version.txt | 1 - 6 files changed, 33 insertions(+), 7 deletions(-) delete mode 100644 Version.txt diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs index e29ed7b..974573f 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.Diagnostics; using GoogleMobileAds.Api; @@ -328,7 +329,7 @@ namespace WZ public void RemoveNative(string adUnitId) { - _admobNativeAdManager.RemoveNative(adUnitId); + StartCoroutine(_admobNativeAdManager.RemoveNative(adUnitId)); } public double GetNativeRevenue(string adUnitId) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs index ba08909..f0d44dc 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs @@ -44,6 +44,8 @@ namespace WZ { return; } + + _nativeAds.Remove(adUnitId); NativeOverlayAd.Load(adUnitId, new AdRequest(), new NativeAdOptions(), (NativeOverlayAd ad, LoadAdError error) => { @@ -264,8 +266,9 @@ namespace WZ _adRevenueCache.Clear(); } - public void RemoveNative(string adUnitId) + public IEnumerator RemoveNative(string adUnitId) { + yield return new WaitForSeconds(0.2f); if (adUnitId == null || string.IsNullOrEmpty(adUnitId)) { foreach (var nativeOverlayAd in _nativeAds) @@ -274,7 +277,7 @@ namespace WZ LoadAd(nativeOverlayAd.Key); } - return; + yield break; } if (_nativeAds.TryGetValue(adUnitId, out var tempAd)) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs index 5892c1b..655a364 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.Linq; using Firebase.RemoteConfig; diff --git a/Assets/Script/SDKManager/RushSDKManager.cs b/Assets/Script/SDKManager/RushSDKManager.cs index 6fc84f1..bf881f6 100644 --- a/Assets/Script/SDKManager/RushSDKManager.cs +++ b/Assets/Script/SDKManager/RushSDKManager.cs @@ -100,12 +100,34 @@ public class RushSDKManager : D_MonoSingleton /// /// /// - public void ShowInterstitial(string position, IvType ivadType = IvType.IV1, Action callback = null) + public void ShowInterstitial(string position, IvType ivadType = IvType.IV1, Action callback = null, bool ivRules = true) { AdsActionEvents.TrackAdPosition(AdsType.Interstitial, position); //插屏展示逻辑 bool ivRulesShow = AdsSDKManager.Instance.IvRulesShow(ivadType); - if (ivRulesShow) + if (!ivRules) + { + //激励竞价不能被规则限制 + //是否有缓存 + bool isInterstitialReady = AdsSDKManager.Instance.IsInterstitialReady(); + if (isInterstitialReady) + { + AdsSDKManager.Instance.ShowInterstitialAd(position, ivadType, (revenue) => + { + //展示完一个插屏之后调用 + IvRulesConst.OverLevels[ivadType.ToString()] = 1; + IvRulesConst.Intervals[ivadType.ToString()] = TimeUtils.GetLocalTimestamp(); + AdsSplashManager.Instance.backgroundTime = Time.realtimeSinceStartup; + callback?.Invoke(revenue); + }); + } + else + { + AdsActionEvents.TrackAdFailToShow(AdsType.Interstitial, position, AdsShowFailType.NoFill); + callback?.Invoke(-1); + } + } + if (ivRulesShow && ivRules) { //是否有缓存 bool isInterstitialReady = AdsSDKManager.Instance.IsInterstitialReady(); diff --git a/Assets/StreamingAssets/build_info b/Assets/StreamingAssets/build_info index 0de6e8a..547e2c8 100644 --- a/Assets/StreamingAssets/build_info +++ b/Assets/StreamingAssets/build_info @@ -1 +1 @@ -Build from HY-LSZNWIN10 at 2025/9/10 16:37:43 \ No newline at end of file +Build from HY-LSZNWIN10 at 2025/9/12 11:10:11 \ No newline at end of file diff --git a/Version.txt b/Version.txt deleted file mode 100644 index 35e687a..0000000 --- a/Version.txt +++ /dev/null @@ -1 +0,0 @@ -1.0.0:2025.9.8第一版上线记录。 \ No newline at end of file