Papcorns Analytics iOS SDK -> Swift 5
在Podfile中添加以下行
pod 'PapcornsAnalytics'
将SDK集成到您的应用程序中
import PapcornsAnalytics
在AppDelegate文件中的didFinishLaunching
或didFinishLaunchingWithOptions
方法中初始化PapcornsAnalytics
var appVersion = ""
if let versionString = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String {
appVersion = versionString
}
PapcornsAnalytics.configure(appId: "INSERT YOUR APP ID HERE", appVersion: appVersion)
将“在这里插入您的APP ID”字符串替换为您收到的ID
设置用户ID
在调用logEvent或logScreen之前,需要设置 PapcornsAnalytics.setUserId
,因为每次我们记录事件或屏幕时都会添加您的userId,如果没有ID,可能会在我们的日志中产生一些未识别的数据。
PapcornsAnalytics.setUserId(userId : "", tools : [.Adjust(adId:Adjust.adid())] )
重要!
如果您使用Revenuecat和Firebase进行收据验证,您还需要设置Revenuecat userId,因为我们还将从Revenuecat webhook中获取日志。
因此,在用户每次进入应用程序时检查身份验证可能是个好主意。
func checkAuth(){
let cUser = Auth.auth().currentUser
if(cUser != nil){
PapcornsAnalytics.setUserId(userId: cUser!.uid)
Purchases.shared.identify(cUser!.uid, { (info, error) in
if let e = error {
print("Sign in error: \(e.localizedDescription)")
}
})
self.continueToSomething()
}else{
Auth.auth().signInAnonymously { (result, err) in
PapcornsAnalytics.setUserId(userId: (result?.user.uid)!)
Purchases.shared.identify((result?.user.uid)!, { (info, error) in
if let e = error {
print("Sign in error: \(e.localizedDescription)")
}
})
self.continueToSomething()
}
}
}
跟踪屏幕
在你的 Viewcontroller 的 viewDidAppear
函数中,调用 PapcornsAnalytics.logScreen
方法并传入 [String:Any] 参数。如果没有参数,请留为空字典 [:]
设置 screenName 参数时,应先写上下文名称,然后在其上方加上 "Screen"。例如,如果在 HomeViewController 中,跟踪屏幕名为 "HomeScreen"。在事件命名中,以大写字母开头。
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
PapcornsAnalytics.logScreen(screenName: "XScreen", screenParameters: [:])
}
跟踪事件
每次需要触发事件(如应用内购买或注册等)时,请使用 PapcornsAnalytics.logEvent
方法并传入 [String:Any] 参数。如果没有参数,请留为空字典 [:]。在事件命名中,以小写字母开头。
PapcornsAnalytics.logEvent(eventName: "effectTapped", eventParameters:
[
"effectName" : "Harry Potter",
"effectId" : "1sae1123asgasr"
]
)
OR
PapcornsAnalytics.logEvent(eventName: "weekly_trial_bought", eventParameters: [:])
发布应用前的检查清单
- 检查每一个应用内购买是否在后端脚本中声明。
- 将后端 webhook 添加到 revenuecat 的 webhook 部分,用于收据验证日志。
- 检查应用 id 是否正确对应于项目。
- 检查在记录事件或屏幕之前是否设置了 userId。