requestIDFA/应用程序跟踪权限iOS 14-如何将其设置为在提示后显示广告?

requestIDFA/应用程序跟踪权限iOS 14-如何将其设置为在提示后显示广告?,ios,objective-c,Ios,Objective C,在我的应用程序上,我是在它第一次启动后直接问这个问题的 - (void)requestIDFA { if (@available(iOS 14, *)) { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { switch (status)

在我的应用程序上,我是在它第一次启动后直接问这个问题的

- (void)requestIDFA {
    
    if (@available(iOS 14, *)) {
            [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
                switch (status) {
                    case ATTrackingManagerAuthorizationStatusAuthorized:
                        NSLog(@"ATTrackingManagerAuthorizationStatusAuthorized");
                         break;
                    case ATTrackingManagerAuthorizationStatusDenied:
                       
                        NSLog(@"ATTrackingManagerAuthorizationStatusDenied");
                        break;
                    case ATTrackingManagerAuthorizationStatusRestricted:
                        
                        NSLog(@"ATTrackingManagerAuthorizationStatusRestricted");
                        break;
                    case ATTrackingManagerAuthorizationStatusNotDetermined:
      
                        NSLog(@"ATTrackingManagerAuthorizationStatusNotDetermined");
                        break;
                }
            }];
        } else {
            // Fallback on earlier versions
        }        
}
我加载广告横幅的代码是

- (void)addGoogleMobileAds {
    
    if(areAdsRemoved){
        
        NSLog(@"Remove Ads IAP Purchased");
        
    }else{
    
    [IronSource setBannerDelegate:self];
    [IronSource loadBannerWithViewController:self size:ISBannerSize_SMART];
   
}
但是我看不到在哪里使用
[self-addGoogleMobileAds]我不希望在用户选择IDFA请求选项之前加载它们

对于那些没有使用14.5或更高版本的用户,我需要确保
[self addGoogleMobileAds]也为它们加载

编辑-

所以我可以这样使用它-?然而,如果我像下面这样使用它,广告不会出现,直到应用程序关闭并重新打开,然后它的工作如预期

- (void)requestIDFA {

    if (@available(iOS 14, *)) {
            [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
                switch (status) {
                    case ATTrackingManagerAuthorizationStatusAuthorized:
            [self addGoogleMobileAds];
                        NSLog(@"ATTrackingManagerAuthorizationStatusAuthorized");
                         break;
                    case ATTrackingManagerAuthorizationStatusDenied:
            [self addGoogleMobileAds];
                        NSLog(@"ATTrackingManagerAuthorizationStatusDenied");
                        break;
                    case ATTrackingManagerAuthorizationStatusRestricted:
            [self addGoogleMobileAds];
                        NSLog(@"ATTrackingManagerAuthorizationStatusRestricted");
                        break;
                    case ATTrackingManagerAuthorizationStatusNotDetermined:
            [self addGoogleMobileAds];

                        NSLog(@"ATTrackingManagerAuthorizationStatusNotDetermined");
                        break;
                }
            }];
        } else {
        [self addGoogleMobileAds];
            // Fallback on earlier versions
        }        
}

我相信,即使用户拒绝跟踪,广告框架也会对你有用;只是它们不会个性化。如果您试图通过等待用户同意来推迟安装,则只需在回调块中处理他们的响应。@Vym我已更新了我的问题-因此我可以使用最后一部分?@user1695971您是否检查了[self addGoogleMobileAds];在给出IDFA后是否调用?。。。如果是的话,你能指定调用[self addGoogleMobileAds]之后发生了什么吗;?