| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  | using System; | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  | using System.Collections; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							| 
									
										
										
										
											2025-09-02 09:14:49 +00:00
										 |  |  |  | using AnyThinkAds.ThirdParty.LitJson; | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  | using Firebase.Analytics; | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  | using UnityEngine; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-01 10:32:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace WZ | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  | { | 
					
						
							|  |  |  |  |     public class AdsActionEvents | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2025-09-15 07:42:07 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         public static void TrackKwaiWaterfallRequest(AdsType adsType,string requestId,int waterfallRequestNumber,int parallelRequests) | 
					
						
							|  |  |  |  |         {  | 
					
						
							|  |  |  |  |             var eventName = "kwai_waterfall_request"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "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<string, object> { | 
					
						
							|  |  |  |  |                 { "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, | 
					
						
							| 
									
										
										
										
											2025-09-15 11:06:55 +00:00
										 |  |  |  |             float floorPrice, int waterfallRequestNumber, int unitRequestNumber, int floorNumber,double value) | 
					
						
							| 
									
										
										
										
											2025-09-15 07:42:07 +00:00
										 |  |  |  |         { | 
					
						
							|  |  |  |  |             var eventName = "kwai_waterfall_fill"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "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); | 
					
						
							| 
									
										
										
										
											2025-09-16 08:19:07 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackKwaiWaterfallFill" + JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-09-15 07:42:07 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         public static void TrackAdClicked(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLICK_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_click"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_platform", adPlatform.ToString()}, | 
					
						
							|  |  |  |  |                 { "ad_source", adSource}, | 
					
						
							|  |  |  |  |                 { "ad_unit_name", adUnitName}, | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							|  |  |  |  |                 { "position", posotion}, | 
					
						
							|  |  |  |  |                 { "value", value}, | 
					
						
							|  |  |  |  |                 { "currency","USD"}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLICK_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-15 07:42:07 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdClicked:" + JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public static void TrackAdClosed(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value) | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-01 10:32:50 +00:00
										 |  |  |  |             AdsSDKManager.Instance.otherAdsOnShow = false; | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.CLOSE_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_close"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_platform", adPlatform.ToString()}, | 
					
						
							|  |  |  |  |                 { "ad_source", adSource}, | 
					
						
							|  |  |  |  |                 { "ad_unit_name", adUnitName}, | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							|  |  |  |  |                 { "position", posotion}, | 
					
						
							|  |  |  |  |                 { "value", value}, | 
					
						
							|  |  |  |  |                 { "currency","USD"}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.CLOSE_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdClosed:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-15 05:59:03 +00:00
										 |  |  |  |         public static void TrackAdStartLoad(PlatformType adPlatform, AdsType adFormat) | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.STARTLOAD_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_start_load"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_platform", adPlatform.ToString()}, | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.STARTLOAD_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdStartLoad:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public static void TrackAdLoaded(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, double loadTime) | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.LOADED_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_loaded"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_platform", adPlatform.ToString()}, | 
					
						
							|  |  |  |  |                 { "ad_source", adSource}, | 
					
						
							|  |  |  |  |                 { "ad_unit_name", adUnitName}, | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "pass_time", (int)Math.Ceiling(loadTime)}, | 
					
						
							|  |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADED_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdLoaded:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  |         public static void TrackAdFailToLoad(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, double loadTime, string reason) | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.LOADFAIL_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_load_fail"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_platform", adPlatform.ToString()}, | 
					
						
							|  |  |  |  |                 { "ad_source", adSource}, | 
					
						
							|  |  |  |  |                 { "ad_unit_name", adUnitName}, | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "pass_time", (int)Math.Ceiling(loadTime)}, | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |                 { "reason", reason}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.LOADFAIL_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdFailToLoad:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-05 02:15:32 +00:00
										 |  |  |  |         public static void TrackAdFailToShow(AdsType adFormat, string pos, AdsShowFailType adShowFailType) | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.SHOWFAIL_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 10:32:50 +00:00
										 |  |  |  |             AdsSDKManager.Instance.otherAdsOnShow = false; | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_show_fail"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							| 
									
										
										
										
											2025-09-05 02:15:32 +00:00
										 |  |  |  |                 { "reason", adShowFailType.ToString()}, | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |                 { "position", pos}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.SHOWFAIL_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdFailToShow:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-01 07:14:26 +00:00
										 |  |  |  |         public static void TrackAdPosition(AdsType adFormat, string pos) | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |             AdPlayCountManager.IncrementAdsActionCount(adFormat, AdPlayCountManager.ADPOSITION_COUNT_SUFFIX); | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             var eventName = "ad_position"; | 
					
						
							|  |  |  |  |             var dic = new Dictionary<string, object> { | 
					
						
							|  |  |  |  |                 { "ad_format", adFormat.ToString()}, | 
					
						
							|  |  |  |  |                 { "position", pos}, | 
					
						
							| 
									
										
										
										
											2025-09-04 09:19:05 +00:00
										 |  |  |  |                 { "number",AdPlayCountManager.GetAdsActionCount(adFormat,AdPlayCountManager.ADPOSITION_COUNT_SUFFIX)} | 
					
						
							| 
									
										
										
										
											2025-09-01 14:43:32 +00:00
										 |  |  |  |             }; | 
					
						
							|  |  |  |  |             FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic); | 
					
						
							|  |  |  |  |             ShuShuEvent.Instance.Track(eventName, dic); | 
					
						
							| 
									
										
										
										
											2025-09-03 07:02:42 +00:00
										 |  |  |  |             LoggerUtils.Debug("[actionevent] TrackAdPosition:"+JsonMapper.ToJson(dic)); | 
					
						
							| 
									
										
										
										
											2025-08-31 08:26:53 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							| 
									
										
										
										
											2025-09-01 10:32:50 +00:00
										 |  |  |  | } |