SDK_UnityMoney/Assets/Script/SDKManager/AdjustManager/AdjustNetwork.cs

82 lines
2.3 KiB
C#
Raw Normal View History

2025-09-02 03:45:05 +00:00
using System;
using System.Collections;
using AdjustSdk;
2025-08-31 03:55:05 +00:00
using UnityEngine;
2025-09-01 10:32:50 +00:00
using WZ;
2025-08-30 10:46:34 +00:00
2025-09-02 09:14:49 +00:00
public class AdjustNetwork : D_MonoSingleton<AdjustNetwork>
2025-08-30 10:46:34 +00:00
{
private const string KEY_USER_NETWORK = "KEY_USER_NETWORK";
2025-08-31 03:55:05 +00:00
public void SetNetwork(string network)
2025-08-30 10:46:34 +00:00
{
if (string.IsNullOrEmpty(network))
{
return;
}
2025-08-31 05:48:26 +00:00
if (network.ToLower().Replace(" ", "") == "Organic".ToLower().Replace(" ", ""))
{
return;
}
2025-08-30 10:46:34 +00:00
string curNetwork = PlayerPrefs.GetString(KEY_USER_NETWORK, "");
if (string.IsNullOrEmpty(curNetwork))
{
2025-09-02 03:45:05 +00:00
LogEventGetSuccess();
2025-08-30 10:46:34 +00:00
PlayerPrefs.SetString(KEY_USER_NETWORK, network);
PlayerPrefs.Save();
}
}
public static string GetNetwork()
{
return PlayerPrefs.GetString(KEY_USER_NETWORK);
}
2025-08-31 05:48:26 +00:00
2025-08-30 10:46:34 +00:00
/// <summary>
/// 是否是自然量用户
/// 默认自然量用户
2025-08-30 10:46:34 +00:00
/// </summary>
/// <returns></returns>
2025-08-31 03:55:05 +00:00
public bool InOrganic()
2025-08-30 10:46:34 +00:00
{
string network = PlayerPrefs.GetString(KEY_USER_NETWORK, "");
if (string.IsNullOrEmpty(network))
{
return true;
}
2025-08-30 11:16:32 +00:00
if (network.ToLower().Replace(" ", "") == "Organic".ToLower().Replace(" ", ""))
{
return true;
}
2025-08-30 10:46:34 +00:00
//去除大小写和空格之后再对比
if (network.ToLower().Replace(" ", "") == "Untrusted Devices".ToLower().Replace(" ", "") || network.ToLower().Replace(" ", "") == "Google Organic Search".ToLower().Replace(" ", ""))
{
return true;
}
return false;
}
2025-09-02 03:45:05 +00:00
/// <summary>
/// 获取adjust信息成功
/// </summary>
public void LogEventGetSuccess()
2025-09-02 03:45:05 +00:00
{
long startTime = AdjustManager.Instance.GetStartTime();
long endTime = TimeUtils.GetLocalTimestamp();
//计算两个时间相差多少秒
// 计算毫秒差值的绝对值
long diffMs = Math.Abs(startTime - endTime);
// 转换为秒并向上取整
double seconds = (double)diffMs / 1000;
int time = (int)Math.Ceiling(seconds);
//数数
ShuShuEvent.Instance.Track("adjust_get_success", "pass_time", time);
FireBaseAnalyticsManager.Instance.LogEvent("adjust_get_success", "pass_time", time);
}
2025-08-30 10:46:34 +00:00
}