logo

帮助中心/文档详情/

穿山甲开发者升级 iOS 14.5及以上版本 Checklist

注意事项:

  • SKAdNetwork(SKAN) 是 Apple 的归因解决方案,可帮助广告客户在保持用户隐私的同时衡量广告活动。 使用 Apple 的 SKAdNetwork 后,即使 IDFA 不可用,广告网络也可以正确获得应用安装的归因结果。 访问 https://developer.apple.com/documentation/storekit/skadnetwork 了解更多信息。 为了广告转化的归因,所有开发者须设置SKAdNetwork方案的穿山甲SKAdNetwork id
  • App Tracking Transparency (ATT) 适用于请求用户授权,访问与应用相关的数据以跟踪用户或设备。 访问 https://developer.apple.com/documentation/apptrackingtransparency了解更多信息。 目前苹果要求在iOS 14.5及以上的版本中必须在弹窗取得用户同意后,才可以追踪用户。对其他版本暂无明确要求,开发者应根据需要配置弹窗

Checklist

1 应用编译环境升级至 Xcode 12.0 及以上版本
2 升级穿山甲 iOS SDK 3.5.1.1 及以上版本,穿山甲提供了 iOS 14.5 与 SKAdNetwork 支持
3 将穿山甲的 SKAdNetwork ID 添加到 info.plist 中,以保证 SKAdNetwork 的正确运行

<key data-tomark-pass >SKAdNetworkItems</key>
  <array data-tomark-pass >
    <dict data-tomark-pass >
      <key data-tomark-pass >SKAdNetworkIdentifier</key>
      // SKAdNetwork方案的穿山甲SKAdNetwork id
      <string data-tomark-pass >238da6jt44.skadnetwork</string>
    </dict>
    <dict data-tomark-pass >
      <key data-tomark-pass >SKAdNetworkIdentifier</key>
      // SKAdNetwork方案的穿山甲SKAdNetwork id
      <string data-tomark-pass >x2jnk7ly8j.skadnetwork</string>
    </dict>
    <dict data-tomark-pass >
      <key data-tomark-pass >SKAdNetworkIdentifier</key>
      // SKAdNetwork方案的穿山甲SKAdNetwork id
      <string data-tomark-pass >22mmun2rn5.skadnetwork</string>
    </dict>
  </array>

4 支持苹果 ATT:从 iOS 14.5 开始,若开发者设置 App Tracking Transparency 向用户申请跟踪授权,在用户授权之前IDFA 将不可用。 如果用户拒绝此请求,应用获取到的 IDFA 将自动清零,可能会导致您的广告收入的降低

  • 要获取 App Tracking Transparency 权限,请更新您的 Info.plist,添加 NSUserTrackingUsageDescription 字段和自定义文案描述。代码示例:
<key data-tomark-pass >NSUserTrackingUsageDescription</key>
<string data-tomark-pass >该标识符将用于向您投放个性化广告</string>
  • 向用户申请权限时,请调用 requestTrackingAuthorizationWithCompletionHandler:方法。我们建议您申请权限后再请求广告,以便穿山甲准确的获得用户授权状态。

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];
  }];
}
文档内容是否对您有帮助?
联系我们