diff --git a/Assets/Script/SDKManager/FirebaseManager/FireBaseAnalyticsManager.cs b/Assets/Script/SDKManager/FirebaseManager/FireBaseAnalyticsManager.cs
index f5c8266..2786bd0 100644
--- a/Assets/Script/SDKManager/FirebaseManager/FireBaseAnalyticsManager.cs
+++ b/Assets/Script/SDKManager/FirebaseManager/FireBaseAnalyticsManager.cs
@@ -1,5 +1,6 @@
using Firebase.Analytics;
+using Newtonsoft.Json;
using SDK.Utils;
///
@@ -46,4 +47,64 @@ public class FireBaseAnalyticsManager : NormalSingleton
+ /// FireBase收益上报
+ ///
+ private void OnAdRevenueEvent(string ad_platform, string ad_source, string ad_unit_name, string ad_format, double revenue)
+ {
+ var impressionParameters = new[] {
+ new Firebase.Analytics.Parameter("ad_platform", ad_platform),
+ new Firebase.Analytics.Parameter("ad_source", ad_source),
+ new Firebase.Analytics.Parameter("ad_unit_name",ad_unit_name),
+ new Firebase.Analytics.Parameter("ad_format", ad_format),
+ new Firebase.Analytics.Parameter("value", revenue),
+ new Firebase.Analytics.Parameter("currency", "USD"), // All AppLovin revenue is sent in USD
+ };
+
+ string name = GetName();
+ Firebase.Analytics.FirebaseAnalytics.LogEvent(name, impressionParameters);
+ }
+
+ ///
+ /// 收益分离
+ ///
+ ///
+ private string GetName()
+ {
+ string name = "ad_impression";
+ //获取在线参数
+ string json = FireBaseRemoteConfigManager.Instance.GetRemoteConfigString("revenue_fir");
+ if (string.IsNullOrEmpty(json))
+ {
+ return name;
+ }
+ var revenueAdjs = JsonConvert.DeserializeObject(json);
+ if (revenueAdjs == null && revenueAdjs.Length == 0)
+ {
+ return name;
+ }
+
+ int totalRate = 0;
+ //获取全部概率
+ foreach (var item in revenueAdjs)
+ {
+ totalRate += item.rate;
+ }
+ //开始随机
+ int randomValue = UnityEngine.Random.Range(0, totalRate);
+ int accumulatedRate = 0;
+
+ //根据随机值定位
+ foreach (var item in revenueAdjs)
+ {
+ accumulatedRate += item.rate;
+ if (randomValue < accumulatedRate)
+ {
+ return item.name;
+ }
+ }
+
+ return name;
+ }
}