iOS14 で広告主の識別子 (IDFA) を取得する方法
この記事のタイトルが意味のあるものであれば、iOS14 による地震をご存知でしょうか。
iOS14 のリリースにより、アプリケーションがユーザーに関する情報を収集する方法が大幅に変更されました。それらの 1 つは、広告主の識別子 (または IDFA) と、アプリケーションがそれにアクセスする方法を扱います。
しかし、知らない人のために、まず IDFA とは何か、なぜそれが重要なのかを説明しましょう。
IDFA とは?
各 iOS デバイスの所有者は、広告会社による追跡を希望するかどうかを決定できます。これにより、これらの企業は、(オンライン ブラウジングの習慣に基づいて) ユーザー向けに調整されたコンテンツをそのユーザーに提供できます。
企業は、IDFA (広告主の識別子) として知られているものを使用してこれを行うことができます。これは、広告主がユーザーとその行動を一致させるための UUID 文字列です。
UUID 文字列の例:123e4567-e89b-12d3-a456–426614174000.
では、先ほどお話しした変更とは何ですか?
要するに、アプリケーションはユーザーにダイアログを表示して、アプリケーションによる追跡を許可するかどうかを尋ねる必要があります。
かなり不吉に見えますよね?
これは、iOS14 より前の動作とは対照的です。iOS 14 では、デバイスで制限付きの広告追跡が有効か無効かを確認するだけで済みました。
Apple の最新バージョンのオペレーティング システム (iOS14) は既に利用可能です (9 月 16 日以降)。 IDFA を使用する開発者は、iOS14 と互換性を持たせるためにアプリケーションを変更する必要があります。
9 月 3 日、Apple は更新を行い、これらの更新を完了する期限を来年の初めに延期しました:
「開発者に必要な変更を加える時間を与えるために、アプリは来年初めからユーザーを追跡する許可を取得する必要があります」
落ち着きを取り戻して息を吹き返す時間があるので、2021 年のニューノーマルに向けて準備を始めましょう。
この記事では、IDFA の背景を紹介し、iOS14 以降からその価値を得る方法を見ていきます。
広告主は IDFA をどのように使用しますか?
iPhone で Web を閲覧していて、次の休暇のホテルを探しているシナリオ (COIVD-19 以前) を考えてみましょう。
表示される各広告は、IDFA が添付されたピクセルを送信します。広告主は、IDFA を照合することで、ホテルを宣伝する多くの広告を見ていることを確認し、ホテルの部屋を予約しようとしていると結論付けることができます。
そこから、ホテルの部屋の広告がたくさん表示されるまで、そう長くはかかりません。
このシンプルでありながら深遠なテクノロジーは、2012 年に iOS6 で私たちの生活に登場しました。それ以来、多くの変化があり、iOS14 は業界を再びひっくり返しています。
✋ 注: これらの新しい API を使用するには、XCode 12 をアップグレードまたはダウンロードする必要があります .
広告の追跡と IDFA の取得
iOS14 より前は、IDFA の取得は非常に簡単でした。
これを実行して、広告追跡が有効になっているかどうかを確認する必要がありました:
[[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]
無効になっている場合は、次のように ASIdentifierManager クラスを介して IDFA を取得できることを意味します。
[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
簡単ですよね?
☝️始まり iOS10 では、ユーザーが広告追跡を無効にした場合、上記のメソッドはゼロで埋められた UUID 文字列を返します。
iOS14 での変更点の 1 つは、広告主の追跡が有効になっているかどうかを確認するメソッドの廃止です。では、アプリケーションは iOS14 以降で切望されている IDFA をどのように取得できるのでしょうか?
ユーザーにダイアログを表示する新しい API を使用する必要があります。このダイアログに関するヒント:
- 一度ユーザーに提示できます
- ダイアログの UI で変更できるのは、[追跡を許可] オプションの上の 2 行だけです (「追跡されますか?」 )
これは、開発者がメッセージをいつ、どのようにユーザーに提示するかについて、じっくり考える必要があることを意味します。
認証ステータス
iOS14 では、App Tracking Transparency と呼ばれる新しいフレームワークが作成されました。このフレームワークには、次の API を提供する ATTrackingManager というクラスが含まれています。
<オール>まず、承認ステータスを取得する方法を学びます。そのためには、trackingAuthorizationStatus を呼び出す必要があります。 メソッド。
ATTrackingManagerAuthorizationStatus status = [ATTrackingManager trackingAuthorizationStatus];
次のいずれかの値を持つ NSUInteger を返します:
- ATTrackingManagerAuthorizationStatusNotDetermined =0
- ATTrackingManagerAuthorizationStatusRestricted =1
- ATTrackingManagerAuthorizationStatusAuthorized =3
- ATTrackingManagerAuthorizationStatusDenied =2
最初の 3 つの結果は一目瞭然なので、最後の結果に焦点を当てます。
広告追跡を有効/無効にする画面がロックされ、このオプションが有効に設定されている場合、制限された認証ステータスを取得できます。
Apple は、子供に属するものとして識別されるデバイスでこれを認めています (たとえば)。
追跡の許可を求める
ダイアログを表示するために必要なコードを調べる前に、まず NSUserTrackingUsageDescription を含める必要があります。 info.plist ファイル内のキー。
このキーの値として追加したものは、前述の 2 行としてダイアログに表示されます。
ダイアログを表示するには、requestTrackingAuthorizationWithCompletionHandler を呼び出す必要があります:
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
if (status == ATTrackingManagerAuthorizationStatusDenied) {
//Logic when authorization status is denied
} else if (status == ATTrackingManagerAuthorizationStatusAuthorized) {
//Logic when authorization status is authorized
} else if (status == ATTrackingManagerAuthorizationStatusNotDetermined) {
//Logic when authorization status is unknown
} else if (status == ATTrackingManagerAuthorizationStatusRestricted) {
//Logic when authorization status is restricted
}
}];
この記事の最初の図 (ダイアログが表示されている場所) では、info.plist ファイルに記述した行がダイアログの 2 行として表示されていることがわかります。
まとめ
結論として、これらの変更は困難ではありますが、すぐには起こらないことを覚えておくことが重要です。
また、アプリケーションでクラッシュやエラーが発生しないように、この記事で説明されているすべての手順に従う必要があります。
-
Windows 7 で「ベース システム デバイス」のドライバを入手する方法
Windows 7 ベース システム デバイス 「Windows 7 ベース デバイス」 問題は世界中に広がっており、何百万人もの人々が、そのためにハードウェアを動作させることができないと報告しています。古いバージョンの Windows とは異なり、この問題では、ハードウェアが何であるかについてのヒントは得られません。つまり、ドライバーを手動で更新したい場合、どれを探すべきかさえわからないということです。幸いなことに、このエラーを完全に修正する簡単な方法がいくつかあります… 「基本システム デバイス」とは 「ベース システム デバイス」は、Windows 7 がドライバーを見つけること
-
Apple TV+ を無料で入手する方法
Apple TV+ はストリーミング戦争の暗黒馬であり、そのライブラリには Ted Lasso、The Morning Show、Severance などの絶賛された番組があります。 ストリーミング サービスの料金は、今月値上げした後、6.99 ドル/6.99 ポンドになりました。以前は、月額 4.99 ドル/4.99 ポンドでした。生活費が上昇し、他のプラットフォームも価格を上げているため、さらに別のサブスクリプションにお金を払うことは理想的ではありません. 幸いなことに、あなたは幸運です。 Apple TV+ には、お客様が利用できる無料トライアルがたくさんあります。一銭も払わずに