iOS14 idfa需要申请才可以使用,用户可以主动拒绝追踪,所以需要我们给用户提示让用户去选择
话不多说直接上代码
1.在plist文件中 新增Privacy - Tracking Usage Description 该id将用于向您推送个性化广告
2.引入 Adsupport.framework ; appTrackingTransparency.framework
3.在对应的地方引入头文件,一般在appdelegate
#import <AdSupport/ASIdentifierManager.h>
#import <AppTrackingTransparency/AppTrackingTransparency.h>
4.打开追踪开关,申请权限
if (@available(iOS 14, *)) { //IDFA 未请求权限:00000000-0000-0000-0000-000000000000 请求权限成功后:5AAEB13C-B619-43CF-9568-007B1B186D1F NSLog(@"IDFA:%@",[[ASIdentifierManager sharedManager] advertisingIdentifier]); //申请权限 [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { NSLog(@"%@",[[ASIdentifierManager sharedManager] advertisingIdentifier]); }]; }
就这样完美的解决了5.1.2被拒