From 264513fd31f873655cb94703637bbf0f583dd53b Mon Sep 17 00:00:00 2001 From: juncong lee Date: Tue, 6 Jan 2026 16:29:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B9=BF=E5=91=8A=E4=BA=8B=E4=BB=B6=E6=89=93?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Resources/ES3/ES3Defaults.asset | 2 - Assets/Script/Common/IAdService.cs | 2 +- .../AdmobAdsManager/AdmobAdsManager.cs | 123 +++++++++--------- .../AdmobInterstitialAdManager.cs | 20 +-- .../AdmobAdsManager/AdmobNativeAdManager.cs | 31 ++--- .../AdmobAdsManager/AdmobRewardedAdManager.cs | 20 +-- .../AdmobAdsManager/AdmobSplashAdManager.cs | 11 +- .../Banner/AdmobBannerAdManager.cs | 16 +-- .../Banner/AdmobCollapsibleBannerAdManager.cs | 18 +-- .../SDKManager/AdsSDKManager/AdsSDKManager.cs | 10 +- .../AdsSDKManager/AdsSplashManager.cs | 14 +- .../AdsSDKManager/Constant/NativeType.cs | 17 +++ .../AdsSDKManager/Constant/NativeType.cs.meta | 11 ++ .../Events/AdsEvents/AdsActionEvents.cs | 122 ++++++----------- .../TpnAdsManager/TpnAdsManager.cs | 38 +++++- .../AdsSDKManager/Utils/AdPlayCountManager.cs | 1 + 16 files changed, 237 insertions(+), 219 deletions(-) create mode 100644 Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs create mode 100644 Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs.meta diff --git a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3Defaults.asset b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3Defaults.asset index fd5568e..ad3aad1 100644 --- a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3Defaults.asset +++ b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3Defaults.asset @@ -32,12 +32,10 @@ MonoBehaviour: - Assembly-CSharp-firstpass - ThinkingAnalytics - Assembly-CSharp - - MaxSdk.Scripts - IAPResolver - ThinkupTpnPlugin.Script.IntegrationManager.Editor - AdjustSdk.Scripts - ThinkingSDK - - MaxSdk.Scripts.IntegrationManager.Editor - GoogleMobileAds.Editor - ThinkupTpnPlugin.Script.Editor - FirebaseMessagingActivityGenerator diff --git a/Assets/Script/Common/IAdService.cs b/Assets/Script/Common/IAdService.cs index e344387..168b869 100644 --- a/Assets/Script/Common/IAdService.cs +++ b/Assets/Script/Common/IAdService.cs @@ -141,7 +141,7 @@ namespace WZ /// 显示原生广告 /// /// 广告位置和尺寸信息 - void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position); + void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position, NativeType nativeType); /// /// 移除原生广告 diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs index 87e8db9..5dbdf91 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobAdsManager.cs @@ -26,9 +26,10 @@ namespace WZ private List _splashAdUnits = new List(); private List _bannerAdUnits = new List(); private List _collapsibleBannerAdUnits = new List(); - private string _rvPos; - private string _ivPos; - private string _naPos; + public string _rvPos; + public string _ivPos; + public string _naPos; + public NativeType _naType; private Action _rvCloseCallback = null; private Action _ivCloseCallback = null; private Action _rvShowFailedCallback = null; @@ -90,7 +91,6 @@ namespace WZ OnRewardedAdClicked ); _rvStartLoadTime = Time.realtimeSinceStartup; - AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Rewarded); } public void DisplayRewarded(string adPos, Action rewardCallback = null, Action showFailedCallback = null) { @@ -128,7 +128,14 @@ namespace WZ private void OnRewardedAdDismissed(string adSource,string adUnitId,double revenue) { - AdsActionEvents.TrackAdClosed(Platfrom,adSource,adUnitId,AdsType.Rewarded,_rvPos,revenue); + AdsActionEvents.TrackAdClosed(Platfrom, + adSource, + adUnitId, + AdsType.Rewarded, + _rvPos, + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Rewarded,_rvPos+AdPlayCountManager.POS_SUFFIX)); + _rvCloseCallback?.Invoke(_receivedReward,revenue); _rvCloseCallback = null; _receivedReward = false; @@ -144,7 +151,14 @@ namespace WZ private void OnRewardedAdClicked(string adSource,string adUnitId,double revenue) { - AdsActionEvents.TrackAdClicked(Platfrom,adSource,adUnitId,AdsType.Rewarded,_rvPos,revenue); + AdsActionEvents.TrackAdClicked(Platfrom, + adSource, + adUnitId, + AdsType.Rewarded, + _rvPos, + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Rewarded,_rvPos+AdPlayCountManager.POS_SUFFIX), + NativeType.None); } private void OnRewardEarnReward(bool reward) @@ -169,7 +183,6 @@ namespace WZ OnInterstitialAdClicked ); _ivStartLoadTime = Time.realtimeSinceStartup; - AdsActionEvents.TrackAdStartLoad(Platfrom,AdsType.Interstitial); } public double GetInterstitialRevenue() { @@ -200,7 +213,14 @@ namespace WZ } private void OnInterstitialAdClicked(string adSource,string adUnitId,double revenue) { - AdsActionEvents.TrackAdClicked(Platfrom, adSource, adUnitId, AdsType.Interstitial, _ivPos, revenue); + AdsActionEvents.TrackAdClicked(Platfrom, + adSource, + adUnitId, + AdsType.Interstitial, + _ivPos, + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Interstitial,_ivPos+AdPlayCountManager.POS_SUFFIX), + NativeType.None); } private void OnInterstitialAdPaid(AdValue adValue) @@ -215,7 +235,15 @@ namespace WZ private void OnInterstitialAdDismissed(string adSource,string adUnitId,double revenue) { - AdsActionEvents.TrackAdClosed(Platfrom, adSource, adUnitId, AdsType.Interstitial, _ivPos, revenue); + AdsActionEvents.TrackAdClosed(Platfrom, + adSource, + adUnitId, + AdsType.Interstitial, + _ivPos, + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Interstitial,_ivPos+AdPlayCountManager.POS_SUFFIX) + ); + _ivCloseCallback?.Invoke(revenue); _ivCloseCallback = null; LoadInterstitial(); @@ -247,7 +275,6 @@ namespace WZ OnSplashAdClicked ); _spStartLoadTime = Time.realtimeSinceStartup; - AdsActionEvents.TrackAdStartLoad(Platfrom,AdsType.Splash); } public bool IsSplashAvailable() @@ -290,7 +317,15 @@ namespace WZ private void OnSplashAdDismissed(string adSource, string adUnitId, double revenue) { - AdsActionEvents.TrackAdClosed(Platfrom, adSource, adUnitId, AdsType.Splash, AdsSplashManager.Instance._coldLaunch ? "Cold" : "Hot", revenue); + AdsActionEvents.TrackAdClosed(Platfrom, + adSource, + adUnitId, + AdsType.Splash, + AdsSplashManager.Instance._coldLaunch ? "Cold" : "Hot", + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Splash,"Splash"+AdPlayCountManager.POS_SUFFIX) + ); + AdsSDKManager.Instance.otherAdsOnShow = false; AdsSplashManager.Instance.OnSplashAdCloseCallback?.Invoke(); LoadSplash(); @@ -305,7 +340,14 @@ namespace WZ private void OnSplashAdClicked(string adSource,string adUnitId,double revenue) { - AdsActionEvents.TrackAdClicked(Platfrom,adSource,adUnitId,AdsType.Splash,AdsSplashManager.Instance._coldLaunch ? "Cold" : "Hot",revenue); + AdsActionEvents.TrackAdClicked(Platfrom, + adSource, + adUnitId, + AdsType.Splash, + AdsSplashManager.Instance._coldLaunch ? "Cold" : "Hot", + revenue, + AdPlayCountManager.GetAdsActionCount(AdsType.Splash,"Splash"+AdPlayCountManager.POS_SUFFIX), + NativeType.None); } private void OnSplashAdPaid(AdValue adValue) @@ -324,7 +366,6 @@ namespace WZ _admobNativeAdManager.InitializeAdUnits( _nativeAdUnits ); - AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Native); } public bool IsNativeAvailable(string adUnitId) @@ -332,9 +373,10 @@ namespace WZ return _admobNativeAdManager?.IsAdAvailable(adUnitId) ?? false; } - public void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position) + public void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position, NativeType nativeType) { _naPos = _adPos; + _naType = nativeType; _admobNativeAdManager.ShowAd(position, adUnitId); } @@ -354,7 +396,7 @@ namespace WZ { LoadStandardBanner(); LoadCollapsingBanner(); - AdsActionEvents.TrackAdStartLoad(Platfrom,AdsType.Banner); + } private void LoadStandardBanner() @@ -422,7 +464,7 @@ namespace WZ #endregion #region 收益上报 - public void TrackAdImpression(string adsourceName,string adSourceInstanceName, AdValue adValue, AdsType type, string placement) + public void TrackAdImpression(string adsourceName,string adSourceInstanceName, AdValue adValue, AdsType type, string placement,NativeType nativeType) { AdjustTrackEvent.Instance.TrackAdEvent(adValue.Value / 1000000f, adsourceName, @@ -445,13 +487,17 @@ namespace WZ position, AdPlayCountManager.GetAdsActionCount(type, AdPlayCountManager.PLAY_COUNT_SUFFIX)); + var positionNumKey = position; + if(string.IsNullOrEmpty(positionNumKey)) positionNumKey = "Banner"; ShuShuEvent.Instance.OnAdRevenueEvent(PlatformType.Admob.ToString(), adsourceName, placement, - type.ToString(), + type, adValue.Value / 1000000f, position, - AdPlayCountManager.GetAdsActionCount(type, AdPlayCountManager.PLAY_COUNT_SUFFIX)); + AdPlayCountManager.GetAdsActionCount(type, AdPlayCountManager.PLAY_COUNT_SUFFIX), + AdPlayCountManager.GetAdsActionCount(type,positionNumKey+AdPlayCountManager.POS_SUFFIX), + nativeType); } #endregion @@ -462,46 +508,7 @@ namespace WZ } #endregion - /// - /// 判断当前广告id的配置是否包含这个id - /// - /// - /// - /// - public bool FindAdsID(AdsType adsType, string adUnitId,BannerType bannerType = BannerType.Standard) - { - 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) - { - if (bannerType == BannerType.Standard) - { - return _bannerAdUnits.Contains(adUnitId); - } - else - { - return _collapsibleBannerAdUnits.Contains(adUnitId); - } - } - else - { - return false; - } - } + } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs index f0793cf..5f7fc17 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs @@ -44,17 +44,13 @@ namespace WZ InterstitialAd.Load(adUnitId, new AdRequest(), (InterstitialAd ad, LoadAdError error) => { + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob,AdsType.Interstitial,adUnitId); if (error != null || ad == null) { LoggerUtils.Debug("[Admob] interstitial ad failed to load an ad with error : " + error); 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()); LoggerUtils.Debug("Admob Interstitial ad loaded with Getsrevenue:"+AdmobUtils.GetInterstitialAdEcpm(ad)); @@ -77,7 +73,8 @@ namespace WZ ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceInstanceId ??"", adValue, AdsType.Interstitial, - adUnitId); + adUnitId, + NativeType.None); onAdPaid?.Invoke(adValue); }; @@ -113,6 +110,13 @@ namespace WZ { LoggerUtils.Debug("[Admob] Interstitial ad failed to open full screen content with error : " + error); onAdError?.Invoke(adUnitId, error.GetCode(), error.GetMessage()); + AdsActionEvents.TrackAdFailToShow(AdsType.Interstitial,AdmobAdsManager.Instance._ivPos,PlatformType.Admob.ToString(),ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceName ??"", + adUnitId, + AdPlayCountManager.GetAdsActionCount(AdsType.Interstitial,AdmobAdsManager.Instance._ivPos+AdPlayCountManager.POS_SUFFIX), + NativeType.None, + error.GetCode().ToString(), + error.GetMessage() + ); }; }); } @@ -145,10 +149,6 @@ 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 aa2d796..1637a03 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs @@ -52,14 +52,10 @@ namespace WZ public void LoadAd(string adUnitId, bool timingRefresh = false) { LoggerUtils.Debug($"[Admob] Native Ad unit {adUnitId} load start , timingRefresh {timingRefresh}"); - //判断在线参数是否包含这个id - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId)) - { - return; - } NativeOverlayAd.Load(adUnitId, new AdRequest(), new NativeAdOptions(), (NativeOverlayAd ad, LoadAdError error) => { + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob, AdsType.Native,adUnitId); _adStartLoadTimes[adUnitId] = Time.realtimeSinceStartup; LoggerUtils.Debug($"[Admob] Native Ad unit {adUnitId} load end, timingRefresh {timingRefresh}. {ad} error {error}"); if (error != null || ad == null) @@ -112,11 +108,6 @@ namespace WZ return; } - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId)) - { - return; - } - AdsActionEvents.TrackAdLoaded(PlatformType.Admob, ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId, @@ -147,7 +138,8 @@ namespace WZ ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceInstanceId ?? "", adValue, AdsType.Native, - adUnitId); + adUnitId, + AdmobAdsManager.Instance._naType); }; ad.OnAdImpressionRecorded += () => { LoggerUtils.Debug("[Admob] Native ad recorded an impression."); }; @@ -159,7 +151,10 @@ namespace WZ adUnitId, AdsType.Native, "", - AdmobUtils.GetNativeEcpm(ad)); + AdmobUtils.GetNativeEcpm(ad), + AdPlayCountManager.GetAdsActionCount(AdsType.Native,AdmobAdsManager.Instance._naPos+AdPlayCountManager.POS_SUFFIX), + AdmobAdsManager.Instance._naType + ); LoggerUtils.Debug("[Admob] Native ad was clicked."); }; @@ -167,12 +162,15 @@ namespace WZ ad.OnAdFullScreenContentClosed += () => { - AdsActionEvents.TrackAdClicked(PlatformType.Admob, + AdsActionEvents.TrackAdClosed(PlatformType.Admob, ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId, AdsType.Native, "", - AdmobUtils.GetNativeEcpm(ad)); + AdmobUtils.GetNativeEcpm(ad), + AdPlayCountManager.GetAdsActionCount(AdsType.Native,AdmobAdsManager.Instance._naPos + AdPlayCountManager.POS_SUFFIX) + ); + LoggerUtils.Debug("[Admob] Native ad full screen content closed."); }; @@ -213,11 +211,6 @@ namespace WZ // 显示特定广告位的广告 public void ShowAd(NativeAdPosition position, string adUnitId, NativeOverlayAd lastAd = null, NativeOverlayAd lastShowAd = null) { - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Native, adUnitId)) - { - return; - } - LoggerUtils.Debug($"[Admob] Native ad ShowAd start {adUnitId} , {position}"); if (_nativeAds.TryGetValue(adUnitId, out var ad)) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs index b93a248..e2ff99a 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs @@ -45,6 +45,7 @@ namespace WZ RewardedAd.Load(adUnitId, new AdRequest(), (RewardedAd ad, LoadAdError error) => { + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob, AdsType.Rewarded,adUnitId); if (error != null || ad == null) { LoggerUtils.Debug("[Admob] rewarded ad failed to load an ad with error : " + error); @@ -55,11 +56,6 @@ namespace WZ LoggerUtils.Debug("[Admob] rewarded ad loaded with response : " + ad.GetResponseInfo().ToString()); 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); @@ -81,7 +77,8 @@ namespace WZ ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceInstanceId ?? "", adValue, AdsType.Rewarded, - adUnitId); + adUnitId, + NativeType.None); }; ad.OnAdImpressionRecorded += () => @@ -114,6 +111,13 @@ namespace WZ { LoggerUtils.Debug("[Admob] rewarded ad failed to open full screen content with error : " + error); onAdError?.Invoke(adUnitId, error.GetCode(), error.GetMessage()); + AdsActionEvents.TrackAdFailToShow(AdsType.Rewarded,AdmobAdsManager.Instance._rvPos,PlatformType.Admob.ToString(),ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceName ??"", + adUnitId, + AdPlayCountManager.GetAdsActionCount(AdsType.Rewarded,AdmobAdsManager.Instance._rvPos+AdPlayCountManager.POS_SUFFIX), + NativeType.None, + error.GetCode().ToString(), + error.GetMessage() + ); }; }); } @@ -141,10 +145,6 @@ 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(); } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs index 7b993e5..179cdf0 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs @@ -46,6 +46,7 @@ namespace WZ AppOpenAd.Load(adUnitId, new AdRequest(), (AppOpenAd ad, LoadAdError error) => { + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob,AdsType.Splash,adUnitId); if (error != null || ad == null) { LoggerUtils.Debug("[Admob] appopen ad failed to load an ad with error : " + error); @@ -74,7 +75,8 @@ namespace WZ ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceInstanceId ?? "", adValue, AdsType.Splash, - adUnitId); + adUnitId, + NativeType.None); onAdPaid?.Invoke(adValue); }; @@ -109,6 +111,13 @@ namespace WZ { LoggerUtils.Debug("[Admob] appopen ad failed to open full screen content with error : " + error); onAdError?.Invoke(adUnitId, error.GetCode(), error.GetMessage()); + AdsActionEvents.TrackAdFailToShow(AdsType.Splash,"Splash",PlatformType.Admob.ToString(),ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceName ??"", + adUnitId, + AdPlayCountManager.GetAdsActionCount(AdsType.Splash,"Splash"+AdPlayCountManager.POS_SUFFIX), + NativeType.None, + error.GetCode().ToString(), + error.GetMessage() + ); }; }); } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs index b0550e8..1fc4ea0 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs @@ -90,7 +90,8 @@ namespace WZ bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo().AdSourceInstanceId ?? "", adValue, AdsType.Banner, - adUnitId); + adUnitId, + NativeType.None); }); bannerAds.OnAdClicked += () => @@ -100,20 +101,19 @@ namespace WZ adUnitId, AdsType.Banner, "", - AdmobUtils.GetBannerEcpm(bannerAds)); + AdmobUtils.GetBannerEcpm(bannerAds), + AdPlayCountManager.GetAdsActionCount(AdsType.Banner,"Banner"+AdPlayCountManager.POS_SUFFIX), + NativeType.None); }; LoadAd(adUnitId); } public void LoadAd(string adUnitId) { - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId)) - { - return; - } if (_bannerAds.TryGetValue(adUnitId, out var ad)) { ad.LoadAd(new AdRequest()); + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob,AdsType.Banner,adUnitId); } } @@ -134,10 +134,6 @@ namespace WZ // 显示特定广告位的广告 private void ShowAd(string adUnitId,BannerAlignType bannerAlignType) { - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId)) - { - return; - } if (_bannerAds.TryGetValue(adUnitId, out var ad)) { ad.SetPosition(bannerAlignType == BannerAlignType.CenterBottom ? AdPosition.Bottom : AdPosition.Top); diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs index a08d4f4..839d56e 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs @@ -90,7 +90,8 @@ namespace WZ bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceInstanceId ?? "", adValue, AdsType.Banner, - adUnitId); + adUnitId, + NativeType.None); }); bannerAds.OnAdClicked += () => @@ -100,22 +101,22 @@ namespace WZ adUnitId, AdsType.Banner, "", - AdmobUtils.GetBannerEcpm(bannerAds)); + AdmobUtils.GetBannerEcpm(bannerAds), + AdPlayCountManager.GetAdsActionCount(AdsType.Banner,"Banner"+AdPlayCountManager.POS_SUFFIX), + NativeType.None + ); }; LoadAd(adUnitId); } public void LoadAd(string adUnitId) { - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId, BannerType.Collapsible)) - { - return; - } if (_bannerAds.TryGetValue(adUnitId, out var ad)) { var adRequest = new AdRequest(); adRequest.Extras.Add("collapsible", "bottom"); ad.LoadAd(adRequest); + AdsActionEvents.TrackAdStartLoad(PlatformType.Admob,AdsType.Banner,adUnitId); } } @@ -139,11 +140,6 @@ namespace WZ // 显示特定广告位的广告 private void ShowAd(string adUnitId,BannerAlignType bannerAlignType) { - if (!AdmobAdsManager.Instance.FindAdsID(AdsType.Banner, adUnitId,BannerType.Collapsible)) - { - return; - } - if (_bannerAds.TryGetValue(adUnitId, out var ad)) { ad.SetPosition(bannerAlignType == BannerAlignType.CenterBottom ? AdPosition.Bottom : AdPosition.Top); diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs index 5fd6bbd..d1387b0 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdsSDKManager.cs @@ -37,6 +37,8 @@ namespace WZ LoggerUtils.Debug("ShowRewardAd _adPos:"+_adPos+" ready:"+IsRewardAdReady(_platformType)); otherAdsOnShow = true; AdPlayCountManager.IncrementAdsActionCount(AdsType.Rewarded,AdPlayCountManager.PLAY_COUNT_SUFFIX); + AdPlayCountManager.IncrementAdsActionCount(AdsType.Rewarded,_adPos+AdPlayCountManager.POS_SUFFIX); + AdjustTrackEvent.Instance.TrackEventName("RV_Show", new Dictionary()); if(_platformType == PlatformType.Admob) { @@ -67,6 +69,7 @@ namespace WZ { AdsSDKManager.Instance.otherAdsOnShow = true; AdPlayCountManager.IncrementAdsActionCount(AdsType.Interstitial,AdPlayCountManager.PLAY_COUNT_SUFFIX); + AdPlayCountManager.IncrementAdsActionCount(AdsType.Interstitial,_adPos+AdPlayCountManager.POS_SUFFIX); AdjustTrackEvent.Instance.TrackEventName("IV_Show", new Dictionary()); if(_platformType == PlatformType.Admob) @@ -98,6 +101,7 @@ namespace WZ { AdPlayCountManager.IncrementAdsActionCount(AdsType.Banner,AdPlayCountManager.PLAY_COUNT_SUFFIX); + AdPlayCountManager.IncrementAdsActionCount(AdsType.Rewarded, "Banner"+AdPlayCountManager.POS_SUFFIX); AdjustTrackEvent.Instance.TrackEventName("Banner_Show", new Dictionary()); if (platformType == PlatformType.Admob) { @@ -122,11 +126,12 @@ namespace WZ return AdmobAdsManager.Instance.IsNativeAvailable(adUnitId); } - public void ShowNativeAd(string _adPos, string adUnitId, NativeAdPosition position) + public void ShowNativeAd(string _adPos, string adUnitId, NativeAdPosition position,NativeType nativeType) { - AdmobAdsManager.Instance.DisplayNative(_adPos, adUnitId, position); + AdmobAdsManager.Instance.DisplayNative(_adPos, adUnitId, position, nativeType); AdjustTrackEvent.Instance.TrackEventName("NA_Show", new Dictionary()); AdPlayCountManager.IncrementAdsActionCount(AdsType.Native,AdPlayCountManager.PLAY_COUNT_SUFFIX); + AdPlayCountManager.IncrementAdsActionCount(AdsType.Native,_adPos+AdPlayCountManager.POS_SUFFIX); } public void RemoveNativeAd(string adUnitId) @@ -155,6 +160,7 @@ namespace WZ { AdjustTrackEvent.Instance.TrackEventName("SP_Show", new Dictionary()); AdPlayCountManager.IncrementAdsActionCount(AdsType.Splash,AdPlayCountManager.PLAY_COUNT_SUFFIX); + AdPlayCountManager.IncrementAdsActionCount(AdsType.Splash,"Splash"+AdPlayCountManager.POS_SUFFIX); AdmobAdsManager.Instance.DisplaySplash(); } diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdsSplashManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdsSplashManager.cs index dafe5b5..ae84234 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdsSplashManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdsSplashManager.cs @@ -84,7 +84,7 @@ namespace WZ LoggerUtils.Debug(" [AppOpen] 热启动 开关:" + hotSplashSwitch); if (!hotSplashSwitch) { - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.RuleLimit); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.RuleLimit); return; } @@ -94,14 +94,14 @@ namespace WZ LoggerUtils.Debug(" [AppOpen] 后台运行时间差值:" + resultTime + " 在线参数值:" + onlineTime); if (resultTime < onlineTime) { - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.RuleLimit); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.RuleLimit); return; } if (!AdsSDKManager.Instance.IsSplashAvailable()) { LoggerUtils.Debug(" [AppOpen] 热启动 广告是否准备好:"); - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.NoFill); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Hot", AdsShowFailType.NoFill); AdsSDKManager.Instance.LoadSplashAd(); return; } @@ -128,7 +128,7 @@ namespace WZ { // 新用户首次不展示 LoggerUtils.Debug(" [AppOpen] 冷启动 新用户首次启动 不展示 :"+OnSplashAdCloseCallback); - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.RuleLimit); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.RuleLimit); OnSplashAdCloseCallback?.Invoke(); } else @@ -140,7 +140,7 @@ namespace WZ } else { - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.NoFill); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.NoFill); OnSplashAdCloseCallback?.Invoke(); AdsSDKManager.Instance.LoadSplashAd(); LoggerUtils.Debug(" [AppOpen] 冷启动广告未准备好"); @@ -159,14 +159,14 @@ namespace WZ } else { - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.NoFill); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.NoFill); OnSplashAdCloseCallback?.Invoke(); AdsSDKManager.Instance.LoadSplashAd(); } } else { - AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.RuleLimit); + //AdsActionEvents.TrackAdFailToShow(AdsType.Splash, "Cold", AdsShowFailType.RuleLimit); OnSplashAdCloseCallback?.Invoke(); } } diff --git a/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs b/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs new file mode 100644 index 0000000..95f98be --- /dev/null +++ b/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs @@ -0,0 +1,17 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace WZ +{ + public enum NativeType + { + None = 0, + Small, + Medium, + FakeNative, + Collapsible, + Full + } +} + diff --git a/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs.meta b/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs.meta new file mode 100644 index 0000000..bc9b9a6 --- /dev/null +++ b/Assets/Script/SDKManager/AdsSDKManager/Constant/NativeType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 422a52b113d314e19b7f8e894cdb72f3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs b/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs index 52e54c2..bcb0a38 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs @@ -20,66 +20,14 @@ namespace WZ { "ad_format", adFormat.ToString()}, { "value", value} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdmobValue"+JsonMapper.ToJson(dic)); } - public static void TrackKwaiWaterfallRequest(AdsType adsType, string requestId, int waterfallRequestNumber, int parallelRequests) - { - var eventName = "kwai_waterfall_request"; - var dic = new Dictionary { - { "request_id", requestId}, - { "waterfall_request_number", waterfallRequestNumber}, - { "parallel_requests", parallelRequests}, - { "ad_type", adsType.ToString()} - }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); - LoggerUtils.Debug("[actionevent] TrackKwaiWaterfallRequest:" + JsonMapper.ToJson(dic)); - } - - public static void TrackKwaiAdunitRequest(AdsType adsType, string requestId, string unitId, - float floorPrice, int waterfallRequestNumber, int unitRequestNumber, int floorNumber) - { - var eventName = "kwai_adunit_request"; - var dic = new Dictionary { - { "request_id", requestId}, - { "unit_id", unitId}, - { "floor_price", floorPrice}, - { "waterfall_request_number", waterfallRequestNumber}, - { "unit_request_number", unitRequestNumber}, - { "floor_number", floorNumber}, - { "ad_type", adsType.ToString()} - }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); - LoggerUtils.Debug("[actionevent] TrackKwaiAdunitRequest:" + JsonMapper.ToJson(dic)); - } - - public static void TrackKwiWaterfallFill(AdsType adsType, string requestId, string unitId, - float floorPrice, int waterfallRequestNumber, int unitRequestNumber, int floorNumber,double value) - { - var eventName = "kwai_waterfall_fill"; - var dic = new Dictionary { - { "request_id", requestId}, - { "unit_id", unitId}, - { "floor_price", floorPrice}, - { "waterfall_request_number", waterfallRequestNumber}, - { "unit_request_number", unitRequestNumber}, - { "floor_number", floorNumber}, - { "ad_type", adsType.ToString() }, - { "value",value} - }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); - LoggerUtils.Debug("[actionevent] TrackKwaiWaterfallFill" + JsonMapper.ToJson(dic)); - } - - - - - public static void TrackAdClicked(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) + public static void TrackAdClicked(PlatformType adPlatform, string adSource, string adUnitName, + AdsType adFormat, string posotion, double value, + int positionNumber,NativeType nativeType) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLICK_COUNT_SUFFIX); var eventName = "ad_click"; @@ -91,14 +39,16 @@ namespace WZ { "position", posotion}, { "value", value}, { "currency","USD"}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLICK_COUNT_SUFFIX)} + { "format_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLICK_COUNT_SUFFIX)}, + { "position_number", positionNumber}, + { "native_type", nativeType}, }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdClicked:" + JsonMapper.ToJson(dic)); } - public static void TrackAdClosed(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) + public static void TrackAdClosed(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value,int positionNumber) { AdsSDKManager.Instance.otherAdsOnShow = false; AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLOSE_COUNT_SUFFIX); @@ -111,24 +61,26 @@ namespace WZ { "position", posotion}, { "value", value}, { "currency","USD"}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLOSE_COUNT_SUFFIX)} + { "format_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLOSE_COUNT_SUFFIX)}, + { "position_number", positionNumber}, }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdClosed:"+JsonMapper.ToJson(dic)); } - public static void TrackAdStartLoad(PlatformType adPlatform, AdsType adFormat) + public static void TrackAdStartLoad(PlatformType adPlatform, AdsType adFormat,string adUnit) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.STARTLOAD_COUNT_SUFFIX); var eventName = "ad_start_load"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, + { "ad_unit_name", adUnit}, { "ad_format", adFormat.ToString()}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.STARTLOAD_COUNT_SUFFIX)} + { "format_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.STARTLOAD_COUNT_SUFFIX)} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdStartLoad:"+JsonMapper.ToJson(dic)); } @@ -142,10 +94,9 @@ namespace WZ { "ad_unit_name", adUnitName}, { "ad_format", adFormat.ToString()}, { "pass_time", (int)Math.Ceiling(loadTime)}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADED_COUNT_SUFFIX)} + { "format_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADED_COUNT_SUFFIX)} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdLoaded:"+JsonMapper.ToJson(dic)); } public static void TrackAdFailToLoad(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, double loadTime, string reason) @@ -161,24 +112,33 @@ namespace WZ { "reason", reason}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADFAIL_COUNT_SUFFIX)} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdFailToLoad:"+JsonMapper.ToJson(dic)); } - public static void TrackAdFailToShow(AdsType adFormat, string pos, AdsShowFailType adShowFailType) + public static void TrackAdFailToShow(AdsType adFormat, string pos, + string adPlatform, string adSource, string adUnitName, + int positionNumber,NativeType nativeType, string errorCode, + string errorMsg) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.SHOWFAIL_COUNT_SUFFIX); AdsSDKManager.Instance.otherAdsOnShow = false; var eventName = "ad_show_fail"; var dic = new Dictionary { { "ad_format", adFormat.ToString()}, - { "reason", adShowFailType.ToString()}, { "position", pos}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.SHOWFAIL_COUNT_SUFFIX)} + { "format_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.SHOWFAIL_COUNT_SUFFIX)}, + { "ad_platform", adPlatform}, + { "ad_source", adSource}, + { "ad_unit_name", adUnitName}, + { "position_number", positionNumber}, + { "native_type", nativeType}, + { "errorCode ", errorCode}, + { "errorMessage", errorMsg} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdFailToShow:"+JsonMapper.ToJson(dic)); } @@ -191,10 +151,10 @@ namespace WZ { "position", pos}, { "backgroundTime", backgroundTime}, { "splashSwitch",splashSwitch}, - { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.ADPOSITION_COUNT_SUFFIX)} + { "position_number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.ADPOSITION_COUNT_SUFFIX)} }; - FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); - ShuShuEvent.Instance.Track(eventName, dic); + + RushSDKManager.Instance.LogEvent(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdPosition:"+JsonMapper.ToJson(dic)); } } diff --git a/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs b/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs index 42cc10f..c8234fe 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs @@ -70,7 +70,7 @@ namespace WZ ATRewardedAutoVideo.Instance.client.onRewardEvent += OnAdRewardEvent; ATRewardedAutoVideo.Instance.addAutoLoadAdPlacementID(new string[] { _topon_rewarded_units }); - AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Rewarded); + AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Rewarded,_topon_rewarded_units); } public void LoadRewarded() { } @@ -103,7 +103,7 @@ namespace WZ ATInterstitialAutoAd.Instance.client.onAdShowFailureEvent += OnAdVideoFailureEvent; ATInterstitialAutoAd.Instance.client.onAdClickEvent += OnAdVideoClickedEvent; ATInterstitialAutoAd.Instance.addAutoLoadAdPlacementID(new string[] { _topon_interstitial_units }); - AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Interstitial); + AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Interstitial,_topon_interstitial_units); } public void LoadInterstitial() { } @@ -132,6 +132,8 @@ namespace WZ ATBannerAd.Instance.client.onAdImpressEvent += OnAdVideoStartEvent; ATBannerAd.Instance.client.onAdAutoRefreshEvent += OnAdVideoStartEvent; LoadBannerAd(); + AdsActionEvents.TrackAdStartLoad(Platfrom, AdsType.Banner,_topon_banner_units); + } public void LoadBannerAd() { @@ -255,6 +257,18 @@ namespace WZ _ivCloseCallback = null; } }, ""); + + var posNum = AdPlayCountManager.GetAdsActionCount(erg.placementId.Equals(_topon_rewarded_units)? AdsType.Rewarded : AdsType.Interstitial,erg.placementId.Equals(_topon_rewarded_units)? _rvPos : _ivPos + AdPlayCountManager.POS_SUFFIX); + + AdsActionEvents.TrackAdFailToShow(erg.placementId.Equals(_topon_rewarded_units)? AdsType.Rewarded : AdsType.Interstitial, + erg.placementId.Equals(_topon_rewarded_units)? _rvPos : _ivPos, + PlatformType.Topon.ToString(), + ClientName + "_" + erg.callbackInfo.network_firm_id, + erg.callbackInfo.adunit_id, + posNum, + NativeType.None,erg.errorCode, + erg.errorMessage + ); } private void OnAdRewardEvent(object sender, ATAdEventArgs erg) @@ -271,7 +285,8 @@ namespace WZ erg.callbackInfo.adunit_id, erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos, - erg.callbackInfo.publisher_revenue); + erg.callbackInfo.publisher_revenue, + AdPlayCountManager.GetAdsActionCount(erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial,erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos + AdPlayCountManager.POS_SUFFIX)); ThreadUtils.QueueOnMainThread(pObj => { @@ -298,7 +313,9 @@ namespace WZ erg.callbackInfo.adunit_id, erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos, - erg.callbackInfo.publisher_revenue); + erg.callbackInfo.publisher_revenue, + AdPlayCountManager.GetAdsActionCount(erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial,erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos+AdPlayCountManager.POS_SUFFIX), + NativeType.None); ThreadUtils.QueueOnMainThread(pObj => { @@ -330,7 +347,7 @@ namespace WZ return false; } - public void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position) + public void DisplayNative(string _adPos, string adUnitId, NativeAdPosition position, NativeType nativeType) { } @@ -384,13 +401,20 @@ namespace WZ erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos, AdPlayCountManager.GetAdsActionCount(adsType,AdPlayCountManager.PLAY_COUNT_SUFFIX)); + + var positionNumKey = _pos; + if(string.IsNullOrEmpty(positionNumKey)) positionNumKey = "Banner"; + ShuShuEvent.Instance.OnAdRevenueEvent(ClientName, ClientName + "_" + erg.callbackInfo.network_firm_id, erg.callbackInfo.adunit_id, - adsType.ToString(), + adsType, erg.callbackInfo.publisher_revenue, _pos, - AdPlayCountManager.GetAdsActionCount(adsType,AdPlayCountManager.PLAY_COUNT_SUFFIX)); + AdPlayCountManager.GetAdsActionCount(adsType,AdPlayCountManager.PLAY_COUNT_SUFFIX), + AdPlayCountManager.GetAdsActionCount(adsType,positionNumKey+AdPlayCountManager.POS_SUFFIX), + NativeType.None + ); } #endregion diff --git a/Assets/Script/SDKManager/AdsSDKManager/Utils/AdPlayCountManager.cs b/Assets/Script/SDKManager/AdsSDKManager/Utils/AdPlayCountManager.cs index 3292803..82c6b0e 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/Utils/AdPlayCountManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/Utils/AdPlayCountManager.cs @@ -7,6 +7,7 @@ namespace WZ { public class AdPlayCountManager { + public const string POS_SUFFIX = "_POS_COUNT"; public const string PLAY_COUNT_SUFFIX = "_PLAY_COUNT"; public const string CLICK_COUNT_SUFFIX = "_CLICK_COUNT"; public const string CLOSE_COUNT_SUFFIX = "_CLOSE_COUNT";