iOS 跟踪权限弹窗的设置 AppTrackingTranspa

2022-09-30  本文已影响0人  不要虚度美好的时光

1. plist文件里设置:

    <key>NSUserTrackingUsageDescription</key>
    <string>是否允许xxxxxxxx,以此来优化您的使用体验.</string>

2. 修改代码:

import AppTrackingTransparency
    func applicationDidBecomeActive(_ application: UIApplication) {
        // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
        
        if #available(iOS 14, *) {
            DispatchQueue.main.asyncAfter(deadline: DispatchTime.now()+2) {
                ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
                    // Tracking authorization completed. Start loading ads here.
                    // loadAd()
                    
                })
            }
        } else {
            // Fallback on earlier versions
            
        }
    }
        ATTrackingManager.requestTrackingAuthorization { status in
            switch status{
            case .notDetermined:
                print("Not Determined")
            case .restricted:
                print("Restricted")
            case .denied:
                print("Denied")
            case .authorized:
                print("IDFA value is: ", ASIdentifierManager.shared().advertisingIdentifier.uuidString)
            @unknown default:
                print("error")
            }
            
//        if #available(iOS 14, *) {
//            guard ATTrackingManager.trackingAuthorizationStatus == .authorized else {
//                        return
//            }
//        } else {
//            guard ASIdentifierManager.shared().isAdvertisingTrackingEnabled else {
//                        return
//            }
//        }
//        // Print IDFA
//        print(ASIdentifierManager.shared().advertisingIdentifier.uuidString)
        }

3. 如果做了上述操作,还是没有弹窗,需要检查跟踪开关有没有被关闭,需要打开:

iOS14.7: Settings -> Privacy -> Tracking -> Allow Apps to Request to Track
iOS16: Setting -> Privacy & Security -> Tracking -> Allow Apps to Request to Track

如果还是没有弹窗,那就换个手机试试。

上一篇 下一篇

猜你喜欢

热点阅读