到目前为止,我的应用使用 Adjust、FB 和 Firebase SDK 进行分析。所以我AppDelegate
的didFinishLaunchingWithOptions
方法大致是这样的:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Adjust
let adjustConfig = ADJConfig(appToken: ADJ_TOKEN, environment: ADJ_ENV)
Adjust.appDidLaunch(adjustConfig)
// FB
ApplicationDelegate.shared.application(application,
didFinishLaunchingWithOptions: launchOptions)
if #available(iOS 14, *) {
Settings.setAdvertiserTrackingEnabled(true)
}
// Firebase
FirebaseApp.configure()
// Other initializations...
return true
}
随着AppTrackingTransparency
框架的添加,我现在在启动时向用户显示一个弹出窗口:
// Before return true in didFinishLaunchingWithOptions
requestTrackingPermission()
func requestTrackingPermission() {
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
break
case .denied:
break
case .notDetermined:
break
case .restricted:
break
@unknown default:
break
}
}
}
}
但是,我有点困惑,接下来要做什么:.authorized
在跟踪权限请求的情况下,我是否需要移动 Analytics 初始化行?对于被拒绝/限制的情况,我该怎么办?以及在什么情况下可以不予认定?
谢谢您的帮助