为 iOS 14+ 做好准备

本指南概述了让您的应用为 iOS 14 做好准备所需进行的更改。

前提条件

  • 互动式媒体广告 SDK 3.12.1 或更高版本。

请求应用跟踪透明度授权

如需显示用于访问 IDFA 的应用跟踪透明度授权请求,请更新您的 Info.plist,以添加 NSUserTrackingUsageDescription 键(包含说明使用情况的自定义消息)。以下是说明文字示例:

<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>

使用情况说明会显示在“应用跟踪透明度”对话框中:

如需显示授权请求,请调用 requestTrackingAuthorizationWithCompletionHandler:。我们建议您先等待回调完成,然后再加载广告。这样一来,如果用户授予应用跟踪透明度权限,互动式媒体广告 SDK 就可以在广告请求中使用 IDFA。

Swift

import AppTrackingTransparency
import AdSupport
...
func requestIDFA() {
  ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
    // Tracking authorization completed. Start loading ads here.
    // loadAd()
  })
}

Objective-C

#import <AppTrackingTransparency/AppTrackingTransparency.h>
#import <AdSupport/AdSupport.h>
...
- (void)requestIDFA {
  [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
    // Tracking authorization completed. Start loading ads here.
    // [self loadAd];
  }];
}

如需详细了解可能的状态值,请参阅 ATTrackingManager.AuthorizationStatus

发布商第一方 ID(以前称为“同应用标识键”)

前提条件:使用 IMA SDK for iOS 3.14.5 或更高版本

iOS 版互动式媒体广告 SDK 引入了发布商第一方 ID(以前称为同应用标识键),可帮助您利用从应用中收集的数据来投放更具相关性和个性化的广告。

发布商第一方 ID 默认处于启用状态,不过您随时可以选择在应用中将其停用,方法是将 IMASettings::SameAppKeyEnabled 设置为 false

Swift

let settings = IMASettings()
// Disables Publisher first-party ID, formerly known as same app key.
settings.SameAppKeyEnabled = false
adsLoader = IMAAdsLoader(settings: settings)

Objective-C

IMASettings *settings = [[IMASettings alloc] init];
// Disables Publisher first-party ID, formerly known as same app key.
settings.SameAppKeyEnabled = false;
IMAAdsLoader *adsLoader = [[IMAAdsLoader alloc] initWithSettings:settings];

在 App Store 中披露数据使用情况

Apple 要求在 App Store 上发布应用的开发者就其应用的数据使用情况披露特定信息。Apple 宣布,从 2020 年 12 月 8 日起,开发者必须针对新应用和应用更新提供这类披露信息。

详细了解数据披露要求