SDK_UnityMoney/Assets/Script/SDKManager/AdsSDKManager/Utils/AdPlayCountManager.cs

155 lines
3.9 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace WZ
{
public class AdPlayCountManager
{
private const string PLAY_COUNT_SUFFIX = "_PLAY_COUNT";
#region
public static int GetKeyEventPlayCount(string key)
{
try
{
return PlayerPrefsUtils.GetPlayerPrefsInt(key, 0);
}
catch (Exception ex)
{
return 0;
}
}
public static void SetKeyEventPlayCount(string key, int count)
{
try
{
PlayerPrefsUtils.SavePlayerPrefsInt(key, count);
}
catch (Exception ex)
{
}
}
public static void IncrementKeyEventPlayCount(string key)
{
int currentCount = GetKeyEventPlayCount(key);
SetKeyEventPlayCount(key, currentCount + 1);
}
#endregion
#region
public static int GetKeyEventFPUCount(string key)
{
try
{
return PlayerPrefsUtils.GetPlayerPrefsInt(key, 0);
}
catch (Exception ex)
{
return 0;
}
}
public static void SetKeyEventFPUCount(string key, int count)
{
try
{
PlayerPrefsUtils.SavePlayerPrefsInt(key, count);
}
catch (Exception ex)
{
}
}
public static void IncrementKeyEventFPUCount(string key)
{
int currentCount = GetKeyEventFPUCount(key);
SetKeyEventFPUCount(key, currentCount + 1);
}
#endregion
#region revenue
public static float GetKeyEventTotalRevenue(string key)
{
try
{
return PlayerPrefsUtils.GetPlayerPrefsFloat(key, 0);
}
catch (Exception ex)
{
return 0;
}
}
public static void SetKeyEventTotalRevenue(string key, float count)
{
try
{
PlayerPrefsUtils.SavePlayerPrefsFloat(key, count);
}
catch (Exception ex)
{
}
}
public static void IncrementKeyEventTotalRevenue(string key, float revenue)
{
float currentCount = GetKeyEventTotalRevenue(key);
SetKeyEventTotalRevenue(key, currentCount + revenue);
}
public static void ResetKeyEventTotalRevenue(string key)
{
SetKeyEventTotalRevenue(key, 0);
}
#endregion
public static int GetAdPlayCount(AdsType adsType)
{
try
{
string key = GetPlayCountKey(adsType);
return PlayerPrefsUtils.GetPlayerPrefsInt(key, 0);
}
catch (Exception ex)
{
LoggerUtils.Error($"获取广告播放次数失败: {ex.Message}");
return 0;
}
}
public static void SetAdPlayCount(AdsType adsType, int count)
{
try
{
string key = GetPlayCountKey(adsType);
PlayerPrefsUtils.SavePlayerPrefsInt(key, count);
}
catch (Exception ex)
{
LoggerUtils.Error($"设置广告播放次数失败: {ex.Message}");
}
}
public static void IncrementAdPlayCount(AdsType adsType)
{
int currentCount = GetAdPlayCount(adsType);
SetAdPlayCount(adsType, currentCount + 1);
}
private static string GetPlayCountKey(AdsType adsType)
{
return $"{adsType}{PLAY_COUNT_SUFFIX}";
}
}
}