VAMP iOS14
iOS14からはApp Tracking Transparencyを使って、アプリトラッキングの承認リクエストをするためのダイアログを表示しユーザが許可するまでIDFAを取得できなくなりました。
このダイアログを提示しない場合、IDFAは0となり、広告収入の損失に繋がる可能性があります。
このドキュメントでは、iOS14をサポートするために必要な対応について説明します。
※AppleはApp Tracking Transparencyを使ってアプリトラッキングの承認リクエストをする対応を来年まで延期し、それまでは、アプリトラッキングの承認リクエストがなくてもIDFAを取得できます。
詳しくはこちらをご覧ください。
IDFAを取得するためにApp Tracking Transparencyでユーザの許諾をリクエストするためにはInfo.plistにNSUserTrackingUsageDescriptionをキーに使用方法の説明を追加する必要があります。
※説明を追加せずにユーザの許諾をリクエストしようとするとアプリがクラッシュします。
※以下は説明文のサンプルです。
<key>NSUserTrackingUsageDescription</key>
<string>App would like to access IDFA for tracking purpose</string>
この説明文は以下のようにダイアログ内で表示されます。
このダイアログを表示するには、ATTrackingManager
のrequestTrackingAuthorizationWithCompletionHandler
を実装します。
完了コールバックを取得してから広告をロードすることをお勧めします。
#import <AppTrackingTransparency/AppTrackingTransparency.h>
...
- (void)requestIDFA {
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
}];
}
IDFAの取得が困難になったこともあり、多くのアドネットワークはAppleが提供するSKAdNetworkを使用してアプリのインストールをアトリビューションしています。
SKAdNetworkを有効にするにはSKAdnetworkItems
をキーにして各アドネットワークのIDをSKAdNetworkIdentifier
をキーにして追加します。
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>348L86ZLVX.skadnetwork</string>
</dict>
</array>
各社のSKAdNetworkIdentifierの一覧はこちらからご覧になれます。
※SKAdNetworkIdentifierは将来追加される可能性があります。