iOS ATTrackingManager iOS 15 d窗不出现?

iOS ATTrackingManager iOS 15 d窗不出现?,第1张

权限d窗

直接上代码

    if (@available(iOS 14.0, *)) {
        // iOS14及以上版本请求权限
        [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
            if (status == ATTrackingManagerAuthorizationStatusAuthorized) {
                NSString *adid = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
            }
        }];
    } else {
       // 低于 iOS 14 
       NSString *adid = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
    }

由于请求时机太靠前,导致权限d窗未d出,进而导致被拒 T_T

官方文档说明
Calls to the API only prompt when the application state is UIApplicationStateActive.

所以,应该在 AppDelegate.m 的这个方法里面进行请求
- (void)applicationDidBecomeActive:(UIApplication *)application { // bla bla bla ~ }

或者接收通知 UIApplicationDidBecomeActiveNotification 后,再请求,bla bla bla ~


参考

官方文档


我的公众号

欢迎关注~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/996533.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存