From 6d0bdbd4da540e8b161e4c3cf5be1f03bcbe1f6c Mon Sep 17 00:00:00 2001 From: juncong lee Date: Thu, 25 Sep 2025 15:37:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0admobloading=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E6=89=93=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AdmobInterstitialAdManager.cs | 7 +++++++ .../AdmobAdsManager/AdmobNativeAdManager.cs | 7 +++++++ .../AdmobAdsManager/AdmobRewardedAdManager.cs | 6 ++++++ .../AdmobAdsManager/AdmobSplashAdManager.cs | 6 ++++++ .../Banner/AdmobBannerAdManager.cs | 8 +++++++- .../Banner/AdmobCollapsibleBannerAdManager.cs | 10 ++++++++-- .../Events/AdsEvents/AdsActionEvents.cs | 18 ++++++++++++++++-- 7 files changed, 57 insertions(+), 5 deletions(-) diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs index 830fdb6..f0793cf 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobInterstitialAdManager.cs @@ -63,6 +63,13 @@ namespace WZ AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Interstitial); onAdLoaded?.Invoke(ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Interstitial, + AdmobUtils.GetInterstitialAdEcpm(ad)); + ad.OnAdPaid += (AdValue adValue) => { LoggerUtils.Debug(String.Format("[Admob] Interstitial ad paid {0} {1}.", adValue.Value, adValue.CurrencyCode)); diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs index 04d6a83..baf2b42 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobNativeAdManager.cs @@ -122,6 +122,13 @@ namespace WZ adUnitId, AdsType.Native, Time.realtimeSinceStartup - _adStartLoadTimes[adUnitId]); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Native, + AdmobUtils.GetNativeEcpm(ad)); + _retryCounters[adUnitId] = 0; diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs index 8610c96..b93a248 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobRewardedAdManager.cs @@ -67,6 +67,12 @@ namespace WZ onAdLoaded?.Invoke(ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Rewarded, + AdmobUtils.GetRewardedAdEcpm(ad)); ad.OnAdPaid += (AdValue adValue) => { diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs index 37f16ee..7b993e5 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/AdmobSplashAdManager.cs @@ -60,6 +60,12 @@ namespace WZ AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Splash); onAdLoaded?.Invoke(ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + ad?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Splash, + AdmobUtils.GetAppOpenAdEcpm(ad)); ad.OnAdPaid += (AdValue adValue) => { diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs index 54dcbaa..b0550e8 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobBannerAdManager.cs @@ -50,8 +50,14 @@ namespace WZ bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId, AdsType.Banner, - Time.realtimeSinceStartup - (_adStartLoadTimes.TryGetValue(adUnitId, out var time)? time : 0)); + Time.realtimeSinceStartup - (_adStartLoadTimes.TryGetValue(adUnitId, out var time) ? time : 0)); AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Banner); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Banner, + AdmobUtils.GetBannerEcpm(bannerAds)); }; bannerAds.OnBannerAdLoadFailed += ((msg) => diff --git a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs index 89ab594..a08d4f4 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/AdmobAdsManager/Banner/AdmobCollapsibleBannerAdManager.cs @@ -45,13 +45,19 @@ namespace WZ _retryCounters[adUnitId] = 0; _adRevenueCache[adUnitId] = AdmobUtils.GetBannerEcpm(bannerAds); LoggerUtils.Debug($"[Admob] banner collapsible -[Load]: {adUnitId} successfully iscollapsible: {bannerAds.IsCollapsible()},ecpm: {AdmobUtils.GetBannerEcpm(bannerAds)}"); - + AdsActionEvents.TrackAdLoaded(AdmobAdsManager.Instance.Platfrom, bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", adUnitId, AdsType.Banner, - Time.realtimeSinceStartup - (_adStartLoadTimes.TryGetValue(adUnitId, out var time)? time : 0)); + Time.realtimeSinceStartup - (_adStartLoadTimes.TryGetValue(adUnitId, out var time) ? time : 0)); AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Banner); + + AdsActionEvents.TrackAdmobValue(PlatformType.Admob, + bannerAds?.GetResponseInfo()?.GetLoadedAdapterResponseInfo()?.AdSourceName ?? "", + adUnitId, + AdsType.Banner, + AdmobUtils.GetBannerEcpm(bannerAds)); }; bannerAds.OnBannerAdLoadFailed += ((msg) => diff --git a/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs b/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs index 5eac245..e9e5bd3 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs @@ -10,9 +10,23 @@ namespace WZ { public class AdsActionEvents { + public static void TrackAdmobValue(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, double value) + { + var eventName = "admob_loaded_value"; + var dic = new Dictionary { + { "ad_platform", adPlatform.ToString()}, + { "ad_source", adSource}, + { "ad_unit_name", adUnitName}, + { "ad_format", adFormat.ToString()}, + { "value", value} + }; + FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); + ShuShuEvent.Instance.Track(eventName, dic); + LoggerUtils.Debug("[actionevent] TrackAdmobValue"+JsonMapper.ToJson(dic)); + } - public static void TrackKwaiWaterfallRequest(AdsType adsType,string requestId,int waterfallRequestNumber,int parallelRequests) - { + public static void TrackKwaiWaterfallRequest(AdsType adsType, string requestId, int waterfallRequestNumber, int parallelRequests) + { var eventName = "kwai_waterfall_request"; var dic = new Dictionary { { "request_id", requestId},