GuruAnalytics_iOS/CHANGELOG.md

151 lines
4.2 KiB
Markdown
Raw Normal View History

## v0.3.5
- 接口更新:
- 日志打包方法eventsLogsArchive废弃使用eventsLogsDirectory获取文件夹URL
## v0.3.4
- 配置privacy manifest文件增加隐私项:
- 隐私API访问:
- System boot time APIs
- File timestamp APIs
- User defaults APIs
## v0.3.3
- feature
- 增加获取当前user properties接口
- getUserProperties() -> [String : String]
- 增加upload开关切换接口
- setEnableUpload(isOn: Bool = true) -> Void
## v0.3.2
- bugfix
- 修复一些字典访问的崩溃问题
## v0.3.1
- feature
- 重命名
- registerInternalEventObserver(reportCallback: @escaping (_ eventCode: Int, _ info: String) -> Void)
## v0.3.0
- feature
- 增加注册网络层错误监听接口
- registerErrorReporter(reportCallback: @escaping (_ errorCode: Int, _ info: String) -> Void)
## v0.2.17
- feature
- 增加清除user property接口
- removeUserProperties(forNames names: [String])
## v0.2.16
- feature
- 增加fg打点保证轮询上传的每批事件中包含一个fg事件。
## v0.2.15
- feature
- 初始化过程中延迟500ms打一个fg事件。
## v0.2.14
- bugfix
- 修复logEvent(_ name: String, parameters: [String : Any]?)parameters中int类型未解析的错误。
## v0.2.13
- feature
- 请求header中添加中台标准字段X-APP-IDX-DEVICE-INFO对应值由应用层从初始化方法中传入。
- initializeLib(..., **saasXAPPID: String, saasXDEVICEINFO: String,** ...)
## v0.2.12
- feature
- 上传服务器每个event增加eventId字段采用uuid4算法小写。
- bugfix
- 将放置到info内的字段从userProperty中移除。
## v0.2.11
- optimization
- fg计算逻辑调整为每间隔1s更新一次缓存累计时长切入后台后记录fg事件缓存累计时长置零。
## v0.2.10
- optimization
- app切入后台上传events任务等待fg事件入库后再执行。
## v0.2.9
- feature
- 增加设置events host name接口setEventsUploadEndPoint(host: String?)
## v0.2.8
- bugfix
- 修复fg时间异常问题将计算时间差所用起始系统时间和当前系统时间均替换为cpu时间。
- 修复当前服务器时间计算逻辑bug。
## v0.2.7
- bugfix
- 修复fg可能出现负值的情况
## v0.2.6
- bugfix
- 修复后台任务超时时未及时调用结束任务造成app被系统终止的问题
## v0.2.5
- bugfix
- 修复Manager成员userProperty多线程访问引起的崩溃
- 修复manager工作队列发生阻塞时block上传任务问题
## v0.2.4
- bugfix
- podspec文件回滚对subspec的配置lint无法通过。
## v0.2.3
- bugfix
- 修复Manager成员userProperty多线程访问引起的崩溃
## v0.2.2
- public接口适配objc可供OC调用
## v0.2.1
- 调整IP直联时服务器证书验证规则
- 上传任务适配后台运行
- 增加文件日志功能,提供日志文件打包导出接口
eventsLogsArchive(_ callback: @escaping (_ url: URL?) -> Void)
## v0.2.0
- 支持HTTPDNS
## v0.1.1
- 将原来设置成员变量方式替换为通过初始化接口传值
initializeLib(uploadPeriodInSecond: Double, batchLimit: Int, eventExpiredSeconds: Double, initializeTimeout: Double, loggerDebug: Bool)
- 间隔`uploadPeriodInSecond`秒后打包上传`batchLimit`个数据
- 支持延时记录event的逻辑初始化后等待user id/device id/firebase pseudo id等属性超时`initializeTimeout`秒
- 支持事件优先级
| ***NAME*** | ***PRIORITY*** |
| :-------- | :--------: |
| `EMERGENCE` | 0 |
| `HIGH` | 5 |
| `DEFAULT` | 10 |
| `LOW` | 15 |
- 首次初始化时自动上报first_open点并将该点以`EMERGENCE`优先级发送
## v0.1.0
- 支持App生命周期自打点`fg`,并根据前后台时间计算`duration`
- 首次初始化时记录first_open_time
- 提供下列接口
| ***Method*** | ***Description*** |
| :-------- | :--------: |
| `logEvent` | 所有event点都是通过该函数完成 |
| `setUserProperty` | 设置用户属性 |
| `setScreen` | 设置当前屏幕 |
| `setDeviceId` | 设置设备ID |
| `setUid` | 设置用户ID |
| `setAdjustId` | 设置AdjustId |
| `setAdId` | 设置Google Ad Id |
| `setFirebaseId` | 设置Firebase Id |