SDK_UnityMoney/Assets/Script/SDKManager/AdsSDKManager/Events/AdsEvents/AdsActionEvents.cs

141 lines
6.4 KiB
C#
Raw Normal View History

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
{
public static void TrackAdClicked(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value)
{
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"},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +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-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"},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +00:00
LoggerUtils.Debug("[actionevent] TrackAdClosed"+JsonMapper.ToJson(dic));
2025-08-31 08:26:53 +00:00
}
public static void TrackAdStartLoad(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat)
{
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()},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +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-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()},
{ "pass_time", loadTime},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +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-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()},
{ "pass_time", loadTime},
{ "reason", reason},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +00:00
LoggerUtils.Debug("[actionevent] TrackAdFailToLoad"+JsonMapper.ToJson(dic));
2025-08-31 08:26:53 +00:00
}
public static void TrackAdFailToShow(PlatformType adPlatform, AdsType adFormat, string reason, string pos)
{
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_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);
2025-09-02 09:14:49 +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-01 14:43:32 +00:00
var eventName = "ad_position";
var dic = new Dictionary<string, object> {
{ "ad_format", adFormat.ToString()},
{ "position", pos},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +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
2025-08-31 08:26:53 +00:00
public static void TrackAdImpression(PlatformType adPlatform, string adSource, string adUnitName, AdsType adFormat, string posotion, double value)
{
2025-09-01 14:43:32 +00:00
var eventName = "ad_impression";
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"},
{ "number",AdPlayCountManager.GetAdPlayCount(adFormat)}
};
FireBaseAnalyticsManager.Instance.LogEvent(eventName, dic);
ShuShuEvent.Instance.Track(eventName, dic);
2025-09-02 09:14:49 +00:00
LoggerUtils.Debug("[actionevent] TrackAdImpression"+JsonMapper.ToJson(dic));
2025-08-31 08:26:53 +00:00
}
}
2025-09-01 10:32:50 +00:00
}