「とりあえず、ATTを実装したい」
そういった人に向けての記事です。
どうも、ちょげ(@chogetarou)です。
iOSアプリでは、ATTというのを実装しないといけなくなりました。
これのせいで、リジェクトされるのですが、色々と実装方法を検索しても結構大変そうなんですよね。
そこで、ATTを簡単に実装する方法を紹介します。
実装
アラート表示
まず、AppDelegateクラスを作ります。
import GoogleMobileAds
import AdSupport
import AppTrackingTransparency
class AppDelegate: NSObject, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
if #available(iOS 14, *) {
//許可をもらう処理
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
GADMobileAds.sharedInstance().start(completionHandler: nil)
})
} else {
//iOS14.0以前の場合
GADMobileAds.sharedInstance().start(completionHandler: nil)
}
//別の処理
return true
}
}
次に〜App .swiftファイルにコードを追加します。
@main
struct 〜App: App {
//追加のコード
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
var body: some Scene {
WindowGroup {
ContentView()
.environment(\.managedObjectContext, persistenceController.container.viewContext)
}
}
}
これでアプリ起動時にアラートが表示される処理は出来ました
*ここまでだとエラーになるかもしれません
アラートの内容

アラートの内容を作っていきます。
Info.plistファイルに、Privacy – Tracking Usage Descriptionというキーを追加します。
そこに、アラートの内容を記述します。
アラートの内容は、ガイドラインに沿ったものにしないといけません。
めんどくさいぜ!という人は、ユーザにあった広告が表示されるということを伝えれば大丈夫です。
メインの言語が、英語なら文言は英語の文言にしてください。
そして、InfoPlist.stringsファイルに日本語文を追加してください。
NSUserTrackingUsageDescription = "お客様の興味関心に合わせた広告を表示するために利用します";
メインの言語が日本語なら逆ですね。
最後に
ここまでの手順で私自身が実際に審査に出してみたのですが、一応通りました。
この記事で紹介したのは、アプリの起動時に許可を取る方法です。
もっとアラートの出し方は工夫をすることが出来るようなので、興味のある方はぜひトライしてみてください。
読んで頂きありがとうございます!
少しでも参考になれば嬉しいです。
では、サラダバー!
コメント