diff --git a/Assets/Script/SDKManager/AdjustManager/AdjustTrackEvent.cs b/Assets/Script/SDKManager/AdjustManager/AdjustTrackEvent.cs index 788eef4..177617c 100644 --- a/Assets/Script/SDKManager/AdjustManager/AdjustTrackEvent.cs +++ b/Assets/Script/SDKManager/AdjustManager/AdjustTrackEvent.cs @@ -27,7 +27,7 @@ public class AdjustTrackEvent : D_MonoSingleton public void UpdateEventToken() { - var remoteConfigString = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("event_adjust_set"); + var remoteConfigString = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("ADJUST_EVENT_MAP"); if (string.IsNullOrEmpty(remoteConfigString)) return; try diff --git a/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs b/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs index 293a62a..67e898e 100644 --- a/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs +++ b/Assets/Script/SDKManager/AdsSDKManager/TpnAdsManager/TpnAdsManager.cs @@ -17,6 +17,7 @@ namespace WZ public string _topon_app_key; public string _topon_interstitial_units; public string _topon_rewarded_units; + public string _topon_banner_units; private string _rvPos; private string _ivPos; private Action _rvCloseCallback = null; @@ -24,6 +25,8 @@ namespace WZ private Action _rvShowFailedCallback = null; public bool _initialized { get; private set; } = false; private bool _receivedReward = false; + private bool bannerReady = false; + private bool bannerHide = false; public void ParseTpnConfig() { @@ -32,6 +35,7 @@ namespace WZ _topon_app_key = config.topon_app_key; _topon_interstitial_units = config.topon_interstitial_units.FirstOrDefault(); _topon_rewarded_units = config.topon_rewarded_units.FirstOrDefault(); + _topon_banner_units = config.topon_banner_units.FirstOrDefault(); } public void Initialize() @@ -45,6 +49,7 @@ namespace WZ ATSDKAPI.setLogDebug(false); InitRewarded(); InitInterstitial(); + SetBanner(); } } @@ -116,6 +121,50 @@ namespace WZ } #endregion + #region banner + private void SetBanner() + { + if (string.IsNullOrEmpty(_topon_banner_units)) return; + ATBannerAd.Instance.client.onAdLoadEvent += OnAdLoadedEvent; + ATBannerAd.Instance.client.onAdLoadFailureEvent += OnAdLoadedFailEvent; + ATBannerAd.Instance.client.onAdImpressEvent += OnAdVideoStartEvent; + ATBannerAd.Instance.client.onAdAutoRefreshEvent += OnAdVideoStartEvent; + LoadBannerAd(); + } + public void LoadBannerAd() + { + Dictionary jsonmap = new Dictionary(); + //配置Banner要展示的宽度,高度,是否使用pixel为单位(只针对iOS有效,Android 使用pixel为单位),注意不同平台的横幅广告有一定限制,例如配置的穿山甲横幅广告640*100,为了能填充完屏幕宽,计算高度H = (屏幕宽 *100)/640;那么在load的extra的size为(屏幕宽:H)。 + ATSize bannerSize = new ATSize(Screen.width - 100, 150, true); + jsonmap.Add(ATBannerAdLoadingExtra.kATBannerAdLoadingExtraBannerAdSizeStruct, bannerSize); + ATBannerAd.Instance.loadBannerAd(_topon_banner_units, jsonmap); + + } + + public bool IsBannerAvailable() + { + return string.IsNullOrEmpty(_topon_banner_units) ? false : bannerReady; + } + + public void ShowBanner() + { + if (bannerHide) + { + ATBannerAd.Instance.showBannerAd(_topon_banner_units); + } + else + { + ATBannerAd.Instance.showBannerAd(_topon_banner_units, ATBannerAdLoadingExtra.kATBannerAdShowingPisitionBottom); + } + } + + public void HideBanner() + { + bannerHide = true; + ATBannerAd.Instance.hideBannerAd(_topon_banner_units); + } + #endregion + #region 代理 private void OnAdLoadedEvent(object sender, ATAdEventArgs erg) { @@ -127,7 +176,7 @@ namespace WZ AdsActionEvents.TrackAdLoaded(Platfrom, ClientName + "_" + info.adInfo.network_firm_id, info.adInfo.adunit_id, - erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, + AdsType.Interstitial, 0); AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Interstitial); } @@ -138,19 +187,32 @@ namespace WZ AdsActionEvents.TrackAdLoaded(Platfrom, ClientName + "_" + info.adInfo.network_firm_id, info.adInfo.adunit_id, - erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, + AdsType.Rewarded, 0); AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Rewarded); + }else if(erg.placementId.Equals(_topon_banner_units)) + { + LoggerUtils.Debug("[Tpn] ads tpn topon banner loaded"); + var info = JsonUtility.FromJson(ATRewardedAutoVideo.Instance.checkAutoAdStatus(erg.placementId)); + AdsActionEvents.TrackAdLoaded(Platfrom, + ClientName + "_" + info.adInfo.network_firm_id, + info.adInfo.adunit_id, + AdsType.Banner, + 0); + AdsKeyEvents.Instance.LogAdFPUEvents(AdsType.Banner); } } private void OnAdLoadedFailEvent(object sender, ATAdErrorEventArgs erg) { + var adsType = AdsType.Rewarded; + if(erg.placementId.Equals(_topon_interstitial_units)) adsType = AdsType.Interstitial; + if(erg.placementId.Equals(_topon_banner_units)) adsType = AdsType.Banner; LoggerUtils.Debug("[Tpn] 广告加载失败:" + JsonMapper.ToJson(erg.callbackInfo.toDictionary())); AdsActionEvents.TrackAdFailToLoad(Platfrom, ClientName + "_" + erg.callbackInfo.network_firm_id, erg.callbackInfo.adunit_id, - erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, + adsType, 0, erg.errorMessage); } @@ -298,6 +360,14 @@ namespace WZ #region 广告收益上报 public void TrackAdImpression(ATAdEventArgs erg) { + var adsType = AdsType.Rewarded; + if(erg.placementId.Equals(_topon_interstitial_units)) adsType = AdsType.Interstitial; + if(erg.placementId.Equals(_topon_banner_units)) adsType = AdsType.Banner; + + var _pos = ""; + if(erg.placementId.Equals(_topon_interstitial_units)) _pos = _ivPos; + if(erg.placementId.Equals(_topon_banner_units)) _pos = _rvPos; + AdjustTrackEvent.Instance.TrackAdEvent(erg.callbackInfo.publisher_revenue, ClientName + "_" + erg.callbackInfo.network_firm_id, erg.callbackInfo.adunit_id, @@ -306,18 +376,18 @@ namespace WZ FireBaseAnalyticsManager.Instance.OnAdRevenueEvent(ClientName, ClientName + "_" + erg.callbackInfo.network_firm_id, erg.callbackInfo.adunit_id, - erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial, + adsType, erg.callbackInfo.publisher_revenue, erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos, - AdPlayCountManager.GetAdsActionCount(erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial,AdPlayCountManager.PLAY_COUNT_SUFFIX)); + AdPlayCountManager.GetAdsActionCount(adsType,AdPlayCountManager.PLAY_COUNT_SUFFIX)); ShuShuEvent.Instance.OnAdRevenueEvent(ClientName, ClientName + "_" + erg.callbackInfo.network_firm_id, erg.callbackInfo.adunit_id, - erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded.ToString() : AdsType.Interstitial.ToString(), + adsType.ToString(), erg.callbackInfo.publisher_revenue, - erg.placementId.Equals(_topon_rewarded_units) ? _rvPos : _ivPos, - AdPlayCountManager.GetAdsActionCount(erg.placementId.Equals(_topon_rewarded_units) ? AdsType.Rewarded : AdsType.Interstitial,AdPlayCountManager.PLAY_COUNT_SUFFIX)); + _pos, + AdPlayCountManager.GetAdsActionCount(adsType,AdPlayCountManager.PLAY_COUNT_SUFFIX)); } #endregion