update: 优化代码结构

Signed-off-by: huyufei <yufei.hu@castbox.fm>
main
胡宇飞 2024-06-18 10:14:14 +08:00
parent f360529552
commit 523115bdb9
6 changed files with 17 additions and 13 deletions

View File

@ -7,11 +7,16 @@ GuruAnalyticsLib 的 Unity 插件库
- 插件库内的 .aar 通过 [guru_analytics](https://github.com/castbox/guru_analytics) 项目直接构建 ( 命令 `gradle publishToMavenLocal` )
- 构建后请改名为 `guru-analytics-{version}.aar`
- 请将 .aar 文件放置于 `./Runtime/GuruAnalytics/Plugins/Android` 目录下
- **iOS**
- **iOS**
- 插件库内的文件 通过 [GuruAnalytics_iOS](https://github.com/castbox/GuruAnalytics_iOS) 项目
- (1) 请将 repo 内的两个文件夹 `Assets``Classses` 拷贝至 `./Runtime/GuruAnalytics/Plugins/iOS/GuruAnalytics` 目录下:
- (2) 请将部署到 Unity 内所有的 `.swift` 文件的 meta 属性内, 取消 iOS 文件属性. (因为打包时会按照 POD 导入)
- 注意及时更新 `GuruAnalyticsLib.podspec`文件内的更新内容
```ruby
# 将 source 内的 git 属性删除, 只保留 tag 属性
# s.source = { :git => 'git@github.com:castbox/GuruAnalytics_iOS.git', :tag => s.version.to_s }
s.source = { :tag => s.version.to_s }
```
---
## Change Logs

View File

@ -18,6 +18,7 @@ namespace Guru
public static readonly string Tag = "[ANU]";
private static readonly string ActionName = "logger_error";
internal const int EventPriorityDefault = 10;
private static IAnalyticsAgent _agent;
@ -211,7 +212,8 @@ namespace Guru
{
raw = BuildParamsJson(data);
}
Debug.Log($"{Tag} event:{eventName} | raw: {raw}");
if (priority < 0) priority = EventPriorityDefault;
Debug.Log($"{Tag} event:{eventName} | raw: {raw} | priority: {priority}");
Agent?.LogEvent(eventName, raw, priority);
}

View File

@ -126,7 +126,6 @@ namespace Guru
public bool IsDebug => CallStatic<bool>("isDebug");
public void LogEvent(string eventName, string parameters, int priority = -1)
{
if (priority < 0) priority = Analytics.EventPriorityDefault;
CallStatic("logEvent", eventName, parameters, priority);
}
public void ReportEventSuccessRate() => CallStatic("reportEventRate");

View File

@ -124,7 +124,6 @@ namespace Guru
public void LogEvent(string eventName, string data, int priority = -1)
{
if (priority < 0) priority = Analytics.EventPriorityDefault;
#if UNITY_IOS
unityLogEvent(eventName, data);
#endif

View File

@ -16,8 +16,6 @@ namespace Guru
public static readonly string USD = "USD";
// 广告平台
public static readonly string AdMAX = "MAX";
// 默认自打点优先级
public static readonly int EventPriorityDefault = 10;
//IAP打点事件
public static readonly string EventIAPFirst = "first_iap";

View File

@ -255,15 +255,16 @@ namespace Guru
/// <param name="key"></param>
/// <param name="data"></param>
/// <param name="setting"></param>
public static void Track(string key, Dictionary<string, dynamic> data = null, EventSetting setting = null)
/// <param name="priority"></param>
public static void Track(string key, Dictionary<string, dynamic> data = null, EventSetting setting = null, int priority = -1)
{
if (null != data)
{
LogEvent(key, data, setting);
LogEvent(key, data, setting, priority);
}
else
{
LogEvent(key, setting);
LogEvent(key, setting, priority);
}
}