This commit is contained in:
juncong lee 2025-09-01 20:53:50 +08:00
commit de243ca1cc
2 changed files with 146 additions and 50 deletions

View File

@ -7,30 +7,30 @@ using Newtonsoft.Json;
using UnityEngine;
using WZ;
public class AppSDKManager : D_MonoSingleton<AppSDKManager>
public class AppSDKManager : MonoBehaviour
{
public static AppSDKManager Instance;
//包名
public const string PackageName = "com.rush.cash.earn.fast.real.money.game";
private void Awake()
{
// 解析配置文件
Instance = this;
FireBaseSDKManager.Instance.Init();
AdjustManager.Instance.Init();
ShuShuMangage.Instance.Init();
EFSdkManager.Instance.Init();
}
public void Init(Action action)
{
FileParse.Parse();
FireBaseSDKManager.Instance.Init();
AdjustManager.Instance.Init();
ShuShuMangage.Instance.Init();
EFSdkManager.Instance.Init();
AdsSDKManager.Instance.InitSDK(action);
}
/// <summary>
/// 协程
/// </summary>
@ -73,24 +73,20 @@ public class AppSDKManager : D_MonoSingleton<AppSDKManager>
public void LogEvent(string eventName)
{
// ShuShuEvent.Instance.Track(eventName);
// FireBaseAnalyticsManager.Instance.LogEvent(eventName);
ShuShuEvent.Instance.Track(eventName);
FireBaseAnalyticsManager.Instance.LogEvent(eventName);
}
public void LogEvent(string eventName, string key1, object value1)
{
// ShuShuEvent.Instance.Track(eventName, key1, value1);
// FireBaseAnalyticsManager.Instance.LogEvent(eventName, key1, value1);
}
public void LogEvent(string eventName, string key1, object value1, string key2, object value2)
{
ShuShuEvent.Instance.Track(eventName, key1, value1);
FireBaseAnalyticsManager.Instance.LogEvent(eventName, key1, value1);
}
public void LogEvent(string eventName, Dictionary<string, object> extraInfo)
{
ShuShuEvent.Instance.Track(eventName, extraInfo);
FireBaseAnalyticsManager.Instance.LogEvent(eventName, extraInfo);
}
/// <summary>
@ -136,21 +132,37 @@ public class AppSDKManager : D_MonoSingleton<AppSDKManager>
public bool GetRemoteConfigBool(string key, bool defaultValue = false)
{
if (Application.isEditor)
{
return defaultValue;
}
return FireBaseRemoteConfigManager.Instance.GetRemoteConfigBool(key, defaultValue);
}
public int GetRemoteConfigInt(string key, int defaultValue = 0)
{
if (Application.isEditor)
{
return defaultValue;
}
return FireBaseRemoteConfigManager.Instance.GetRemoteConfigInt(key, defaultValue);
}
public string GetRemoteConfigString(string key, string defaultValue = "")
{
if (Application.isEditor)
{
return defaultValue;
}
return FireBaseRemoteConfigManager.Instance.GetRemoteConfigString(key, defaultValue);
}
public float GetRemoteConfigFloat(string key, float defaultValue = 0)
{
if (Application.isEditor)
{
return defaultValue;
}
return FireBaseRemoteConfigManager.Instance.GetRemoteConfigFloat(key, defaultValue);
}

View File

@ -2,7 +2,9 @@
using System;
using System.Collections.Generic;
using Firebase.Analytics;
using Firebase.RemoteConfig;
using Newtonsoft.Json;
using WZ;
namespace WZ
{
@ -24,22 +26,50 @@ namespace WZ
}
}
public void LogEvent(string eventName)
{
List<Parameter> parameterList = new List<Parameter>();
if (superProperties != null)
var superProperties = GetSuperProperties();
if (superProperties.Count > 0)
{
foreach (var superProperty in superProperties)
FirebaseAnalytics.LogEvent(eventName, superProperties.ToArray());
}
else
{
Parameter parameter = new Parameter(superProperty.Key, superProperty.Value.ToString());
parameterList.Add(parameter);
FirebaseAnalytics.LogEvent(eventName);
}
}
FirebaseAnalytics.LogEvent(eventName, parameterList.ToArray());
public void LogEvent(string eventName, string key1, object value1)
{
List<Parameter> parameters = new List<Parameter>();
parameters.Add(GetParameter(key1, value1));
foreach (var superProperty in GetSuperProperties())
{
parameters.Add(superProperty);
}
FirebaseAnalytics.LogEvent(eventName, parameters.ToArray());
}
public void LogEvent(string eventName, Dictionary<string, object> dict)
{
List<Parameter> parameters = new List<Parameter>();
foreach (var item in dict)
{
Parameter parameter = GetParameter(item.Key, item.Value);
parameters.Add(parameter);
}
foreach (var superProperty in GetSuperProperties())
{
parameters.Add(superProperty);
}
FirebaseAnalytics.LogEvent(eventName, parameters.ToArray());
}
public void LogEvent(string eventName, Dictionary<string, string> dict)
{
List<Parameter> parameters = new List<Parameter>();
@ -48,7 +78,13 @@ namespace WZ
Parameter parameter = new Parameter(item.Key, item.Value);
parameters.Add(parameter);
}
Firebase.Analytics.FirebaseAnalytics.LogEvent(eventName, parameters.ToArray());
foreach (var superProperty in GetSuperProperties())
{
parameters.Add(superProperty);
}
FirebaseAnalytics.LogEvent(eventName, parameters.ToArray());
}
/// <summary>
@ -58,7 +94,7 @@ namespace WZ
/// <param name="property"></param>
public void SetUserProperty(string name, string property)
{
Firebase.Analytics.FirebaseAnalytics.SetUserProperty(name, property);
FirebaseAnalytics.SetUserProperty(name, property);
}
/// <summary>
@ -95,6 +131,24 @@ namespace WZ
PlayerPrefsUtils.SavePlayerPrefsString(KEY_SUPER_PROPERTIES, json);
}
/// <summary>
/// 获取公共事件属性,每次上报都带上
/// </summary>
/// <returns></returns>
private List<Parameter> GetSuperProperties()
{
List<Parameter> parameterList = new List<Parameter>();
if (superProperties != null)
{
foreach (var superProperty in superProperties)
{
Parameter parameter = GetParameter(superProperty.Key, superProperty.Value);
parameterList.Add(parameter);
}
}
return parameterList;
}
/// <summary>
/// FireBase收益上报
@ -165,5 +219,35 @@ namespace WZ
return name;
}
private Parameter GetParameter(string key, object value)
{
Type type = value.GetType();
// 根据类型进行转换
if (type == typeof(string))
{
return new Parameter(key, value as string);
}
if (type == typeof(int))
{
return new Parameter(key, (int)value);
}
if (type == typeof(float))
{
return new Parameter(key, (float)value);
}
if (type == typeof(long))
{
return new Parameter(key, (long)value);
}
if (type == typeof(double))
{
return new Parameter(key, (double)value);
}
return new Parameter(key, value as string);
}
}
}