iOS 14.0 适配IDFA

2020-10-12  本文已影响0人  刃之剑
+ (void)getIDFA{

    if(@available(iOS14, *)) {

        #if __has_include()

         // iOS14及以上版本需要先请求权限

         [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {

             // 获取到权限后,依然使用老方法获取idfa

             if(status == ATTrackingManagerAuthorizationStatusAuthorized) {

                 NSString *idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];

                 NSLog(@"%@",idfa);

             }else{

                  NSLog(@"请在设置-隐私-跟踪中允许App请求跟踪");

             }

         }];

        #else

        // iOS14以下版本依然使用老方法

        // 判断在设置-隐私里用户是否打开了广告跟踪

        if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {

            NSString *idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];

            NSLog(@"%@",idfa);

        }else{

            NSLog(@"请在设置-隐私-广告中打开广告跟踪功能");

        }

        #endif



    }else{

        // iOS14以下版本依然使用老方法

        // 判断在设置-隐私里用户是否打开了广告跟踪

        if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {

            NSString *idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];

            NSLog(@"%@",idfa);

        }else{

            NSLog(@"请在设置-隐私-广告中打开广告跟踪功能");

        }

    }

}
上一篇下一篇

猜你喜欢

热点阅读