Palta Brain 事件schema Swift SDK
这是一个用于向 Palta Brain 报告应用事件并在事件schema上应用的 Swift SDK。
集成前
您不能直接集成这个包。您需要使用特定的包含事件代码的包,该代码为您的特定事件schema生成。您的包受基本认证保护,该认证集成到包url中。您不需要为个别用户/设备设置身份验证。您应该预料到凭据的更改,您将事先得到通知。在集成之前,您应该从 Palta Brain 团队获取所需的凭据。
- API密钥
- 报告URL
- (仅限SPM) 单独SPM包URL
- (仅限CocoaPods) Pod名称
- (仅限CocoaPods) 自定义pod仓库URL
SPM安装
添加提供的包URL作为包依赖项。SDK将自动添加为依赖项。每次您需要获取新的事件schema版本时,触发UI中的“更新包”选项。
CocoaPods 安装
将提供的 pod 名称和 spec url 添加到您的 Podfile 中。SDK 将自动作为依赖项添加。每次需要获取新的事件架构版本时,请将 pod 版本提高一步。
使用方法
设置 SDK
import PaltaAnalytics
PaltaAnalytics.shared.setAPIKey(
"YOUR-API-KEY",
and: URL(string: "YOUR-HOST-URL")!
)
报告事件
import PaltaAnalytics
import PaltaEvents
PaltaAnalytics.shared.log(
EdgeCaseEvent(propBoolean: true)
)
请注意,所有事件报告都是线程安全的。所有属性均非必需,可省略以维持向后兼容性。然而,预期开发者在实现事件时填写所有属性。如果不可能,请通知您的任务报告者。
带有事件头的事件报告
import PaltaAnalytics
import PaltaEvents
PaltaAnalytics.shared.log(
EdgeCaseEvent(propBoolean: true)
.with(EventHeader.EdgeCase(propEnum: .skip))
)
应用头部的数量没有限制,但它们应该与服务实例的 schema 中的事件类型相关联。
修改上下文
PaltaAnalytics.shared.editContext {
$0.user.userID = "New user id"
$0.appsflyer.appsflyerID = nil
}
可以在修改器闭包中做任何事情,所有工作都被视为原子操作,并保护不受其他线程的竞争。然而,应该避免在修改器块中进行密集型操作,因为其他修改会被锁定。