From 426ef62b6d799496d166a23cb744216d763054f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=89=E5=B3=B0?= Date: Thu, 18 Sep 2025 15:03:56 +0800 Subject: [PATCH] =?UTF-8?q?1.Native=E9=A2=9C=E8=89=B2=202.=E6=8F=92?= =?UTF-8?q?=E5=B1=8F=E6=8C=87=E5=AE=9A=E5=B9=BF=E5=91=8A=E4=BD=8D=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E8=83=BD=E6=92=AD=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SDKManager/AdsSDKManager/AdsSDKManager.cs | 23 +++--- Assets/Script/SDKManager/RushSDKManager.cs | 72 +++++++++++++------ 2 files changed, 64 insertions(+), 31 deletions(-) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs index 20cddd9..825a8d1 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs @@ -331,7 +331,7 @@ namespace WZ #region IvRules - public bool IvRulesShow(IvType ivadType) + public bool IvRulesShow(IvType ivadType, bool isShow = true) { //1.获取远程配置 string json = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("IV_RULES"); @@ -367,7 +367,10 @@ namespace WZ LoggerUtils.Debug($"[SDK] {ivadType.ToString()} 前N次不展示插屏, 本地次数是{currentSkipLevel + 1}, 远程参数是{skipLevel}"); if (currentSkipLevel < skipLevel) { - PlayerPrefsUtils.SavePlayerPrefsInt($"{IvRulesKey.KEY_SKIPLEVEL}_{ivadType.ToString()}", currentSkipLevel + 1); + if (isShow) + { + PlayerPrefsUtils.SavePlayerPrefsInt($"{IvRulesKey.KEY_SKIPLEVEL}_{ivadType.ToString()}", currentSkipLevel + 1); + } return false; } //5.判断overLevel(每跳过几次触发) 第一次会展示 之后每展示一次间隔+1 @@ -376,14 +379,18 @@ namespace WZ LoggerUtils.Debug($"[SDK] {ivadType.ToString()} 当前间隔次数: 本地次数是{currentOverLevel + 1}, 远程参数是{overLevel}"); if (currentOverLevel != 0) { - if (currentOverLevel >= overLevel) + if (isShow) { - IvRulesConst.OverLevels[ivadType.ToString()] = 0; - } - else - { - IvRulesConst.OverLevels[ivadType.ToString()] += 1; + if (currentOverLevel >= overLevel) + { + IvRulesConst.OverLevels[ivadType.ToString()] = 0; + } + else + { + IvRulesConst.OverLevels[ivadType.ToString()] += 1; + } } + return false; } diff --git a/Assets/Script/SDKManager/RushSDKManager.cs b/Assets/Script/SDKManager/RushSDKManager.cs index 37f6227..0dc94e2 100644 --- a/Assets/Script/SDKManager/RushSDKManager.cs +++ b/Assets/Script/SDKManager/RushSDKManager.cs @@ -159,6 +159,11 @@ public class RushSDKManager : D_MonoSingleton return AdsSDKManager.Instance.IsInterstitialReady(); } + public bool CanShowInterstitialAd(IvType ivType) + { + return AdsSDKManager.Instance.IvRulesShow(ivType, false); + } + /// /// 展示插屏广告 /// @@ -250,7 +255,7 @@ public class RushSDKManager : D_MonoSingleton return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); } - public void ShowFullNative(RectTransform rectTransform, Camera pCom = null, string position = "") + public void ShowFullNative(RectTransform rectTransform, Camera pCom = null, string position = "", NativeTemplateStyle nativeTemplateStyle = null) { AdsActionEvents.TrackAdPosition(AdsType.Native, position); if (!IsNativeFullReady()) @@ -260,11 +265,17 @@ public class RushSDKManager : D_MonoSingleton } var adUnitId = StaticValue.AdmobFullNativeId; - var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle + + if (nativeTemplateStyle == null) { - TemplateId = NativeTemplateId.Medium, - MainBackgroundColor = Color.white - }, rectTransform, pCom); + nativeTemplateStyle = new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Medium, + MainBackgroundColor = Color.white + }; + } + + var nativeAdPosition = NativeAdPosition.Create(nativeTemplateStyle, rectTransform, pCom); AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); } @@ -296,7 +307,7 @@ public class RushSDKManager : D_MonoSingleton return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); } - public void ShowNative(RectTransform rectTransform, Camera pCom = null, string position = "") + public void ShowNative(RectTransform rectTransform, Camera pCom = null, string position = "", NativeTemplateStyle nativeTemplateStyle = null) { AdsActionEvents.TrackAdPosition(AdsType.Native, position); if (!IsNativeReady()) @@ -304,13 +315,18 @@ public class RushSDKManager : D_MonoSingleton AdsActionEvents.TrackAdFailToShow(AdsType.Native, position, AdsShowFailType.NoFill); return; } + + if (nativeTemplateStyle == null) + { + nativeTemplateStyle = new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Small, + MainBackgroundColor = Color.white + }; + } var adUnitId = StaticValue.AdmobNativeId; - var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle - { - TemplateId = NativeTemplateId.Small, - MainBackgroundColor = Color.white - }, rectTransform, pCom); + var nativeAdPosition = NativeAdPosition.Create(nativeTemplateStyle, rectTransform, pCom); AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); } @@ -327,7 +343,7 @@ public class RushSDKManager : D_MonoSingleton return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); } - public void ShowSmallNative(RectTransform rectTransform, Camera pCom = null, string position = "") + public void ShowSmallNative(RectTransform rectTransform, Camera pCom = null, string position = "", NativeTemplateStyle nativeTemplateStyle = null) { AdsActionEvents.TrackAdPosition(AdsType.Native, position); if (!IsSmallNativeReady()) @@ -335,13 +351,18 @@ public class RushSDKManager : D_MonoSingleton AdsActionEvents.TrackAdFailToShow(AdsType.Native, position, AdsShowFailType.NoFill); return; } + + if (nativeTemplateStyle == null) + { + nativeTemplateStyle = new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Small, + MainBackgroundColor = Color.white + }; + } var adUnitId = StaticValue.AdmobSmallNativeId; - var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle - { - TemplateId = NativeTemplateId.Small, - MainBackgroundColor = Color.white - }, rectTransform, pCom); + var nativeAdPosition = NativeAdPosition.Create(nativeTemplateStyle, rectTransform, pCom); AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); } @@ -358,7 +379,7 @@ public class RushSDKManager : D_MonoSingleton return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); } - public void ShowMinddleNative(RectTransform rectTransform, Camera pCom = null, string position = "") + public void ShowMinddleNative(RectTransform rectTransform, Camera pCom = null, string position = "", NativeTemplateStyle nativeTemplateStyle = null) { AdsActionEvents.TrackAdPosition(AdsType.Native, position); if (!IsMinddleNativeReady()) @@ -366,13 +387,18 @@ public class RushSDKManager : D_MonoSingleton AdsActionEvents.TrackAdFailToShow(AdsType.Native, position, AdsShowFailType.NoFill); return; } + + if (nativeTemplateStyle == null) + { + nativeTemplateStyle = new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Small, + MainBackgroundColor = Color.white + }; + } var adUnitId = StaticValue.AdmobMinddleNativeId; - var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle - { - TemplateId = NativeTemplateId.Small, - MainBackgroundColor = Color.white - }, rectTransform, pCom); + var nativeAdPosition = NativeAdPosition.Create(nativeTemplateStyle, rectTransform, pCom); AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); }