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) { 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.GetAdPlayCount(adFormat)} }; 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; 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.GetAdPlayCount(adFormat)} }; 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) { var eventName = "ad_start_load"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_format", adFormat.ToString()}, { "number",AdPlayCountManager.GetAdPlayCount(adFormat)} }; 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) { 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", loadTime}, { "number",AdPlayCountManager.GetAdPlayCount(adFormat)} }; 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) { 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", loadTime}, { "reason", reason}, { "number",AdPlayCountManager.GetAdPlayCount(adFormat)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdFailToLoad"+JsonMapper.ToJson(dic)); } public static void TrackAdFailToShow(PlatformType adPlatform, AdsType adFormat, string reason, string pos) { AdsSDKManager.Instance.otherAdsOnShow = false; var eventName = "ad_show_fail"; var dic = new Dictionary { { "ad_platform", adPlatform.ToString()}, { "ad_format", adFormat.ToString()}, { "reason", reason}, { "position", pos}, { "number",AdPlayCountManager.GetAdPlayCount(adFormat)} }; 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) { var eventName = "ad_position"; var dic = new Dictionary { { "ad_format", adFormat.ToString()}, { "position", pos}, { "number",AdPlayCountManager.GetAdPlayCount(adFormat)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdPosition"+JsonMapper.ToJson(dic)); } public static void TrackAdImpression(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) { var eventName = "ad_impression"; 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.GetAdPlayCount(adFormat)} }; FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); ShuShuEvent.Instance.Track(eventName, dic); LoggerUtils.Debug("[actionevent] TrackAdImpression"+JsonMapper.ToJson(dic)); } } }