現在、Unity は Ios のインターフェイスを直接呼び出していません。これは自分で記述する必要があり、App Tracking Transparency フレームワークに関連付けられています。ここでの問題については、C# コード呼び出しを通じて説明します。メソッド 1 については、それのみが行われます。
ゲームを開始するときに初めて呼び出されます。頻繁にリクエストを呼び出すと、レビューが与えられないため、通常は 1 回呼び出されます。許可が必要な場合は、通常、許可を求めるプロンプトが表示されます。ユーザーが自分で開きます。
方法 1 Unity で UnityEngine.iOS.Device.advertisingTrackingEnabled を使用して許可するかどうかを判断する場合がありますが、リクエストが失敗する場合があり、非常に混乱しますが、特に問題は見つかりません。一部の iOS デバイス情報が必要です
。後で追跡プロトコルを追跡します。そうでない場合、監査はそれを渡しません。
ここに Unity の UnityEngine.iOS.Device 関数があります。自分で確認できます。ios
の広告識別子は、ios デバイスの一意の識別子として使用できます。
方法1
- xcode を通常どおりパッケージ化した後の手順は次のとおりです。クラスの下で UnityAppController.mm を選択し、2 つの参照を追加します。
#import <AdSupport/AdSupport.h>
#import <AppTrackingTransparency/AppTrackingTransparency.h>
- 次に、 bool _unityAppReady =
false を検索します (このフィールドは通常パッケージ化されています)。そうでない場合は、自分で追加する必要があります
- 引き続き、(void)applicationDid becomeActive:(UIApplication*)application メソッドを検索し、このメソッドの最後に追加します。
if (@available(iOS 14, *)) {
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
}];
} else {
[[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled];
}
コード部分が完成しました。
- 次に、情報に移動してリクエストの説明を追加する必要があります。プライバシー - 使用状況の追跡フィールドを使用して、ここに使用法の説明を追加できます。NSUserTrackingUsageDescription にすることもできます。通常、中国では「あなたのデータ」と説明します。より良い個性を提供するために使用されます。広告エクスペリエンスを最適化します。」それだけです。
圧縮して実行するだけです。間違った情報を入力するのが心配な場合は、情報ファイルをクリックしてみてください。正常に開けない場合は、コピー後の最後に隠しスペースが表示される可能性があります。削除してください。ここで注意が必要です。
すでにパッケージ化して実行した後、電話機上のプログラムを削除して、プロジェクトを再構築してください。
方法 2
これは他の人の記事への直接の参照です。Unity は IOS ATT 認証ポップアップ ウィンドウ (AppTrackingTransparency) を呼び出します。