using System; using System.Collections; using System.Collections.Generic; using AnyThinkAds.ThirdParty.LitJson; using Firebase.Analytics; using UnityEngine; namespace WZ { public class AdsActionEvents { public static void TrackAdClicked(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLICK_COUNT_SUFFIX); var eventName = "ad_click"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_source", adSource}, { "ad_unit_name", adUnitName}, { "ad_format", adFormat.ToString()}, { "position", posotion}, { "value", value}, { "currency","USD"}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLICK_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(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) { AdsSDKManager.Instance.otherAdsOnShow = false; AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLOSE_COUNT_SUFFIX); var eventName = "ad_close"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_source", adSource}, { "ad_unit_name", adUnitName}, { "ad_format", adFormat.ToString()}, { "position", posotion}, { "value", value}, { "currency","USD"}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLOSE_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdClosed:"+JsonMapper.ToJson(dic)); } public static void TrackAdStartLoad(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.STARTLOAD_COUNT_SUFFIX); var eventName = "ad_start_load"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_format", adFormat.ToString()}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.STARTLOAD_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdStartLoad:"+JsonMapper.ToJson(dic)); } public static void TrackAdLoaded(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, double loadTime) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.LOADED_COUNT_SUFFIX); var eventName = "ad_loaded"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_source", adSource}, { "ad_unit_name", adUnitName}, { "ad_format", adFormat.ToString()}, { "pass_time", (int)Math.Ceiling(loadTime)}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADED_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(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) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.LOADFAIL_COUNT_SUFFIX); var eventName = "ad_load_fail"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_source", adSource}, { "ad_unit_name", adUnitName}, { "ad_format", adFormat.ToString()}, { "pass_time", (int)Math.Ceiling(loadTime)}, { "reason", reason}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADFAIL_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdFailToLoad:"+JsonMapper.ToJson(dic)); } public static void TrackAdFailToShow(AdsType adFormat, string pos, AdsShowFailType adShowFailType) { 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)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdFailToShow:"+JsonMapper.ToJson(dic)); } public static void TrackAdPosition(AdsType adFormat, string pos) { AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.ADPOSITION_COUNT_SUFFIX); var eventName = "ad_position"; var dic = new Dictionary { { "ad_format", adFormat.ToString()}, { "position", pos}, { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.ADPOSITION_COUNT_SUFFIX)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdPosition:"+JsonMapper.ToJson(dic)); } } }