👣
【Flutter】ATT(App Tracking Transparency)を作成。 Data Use and Sharingを解消する
ATT(App Tracking Transparency)とは
これ
Guideline 5.1.2 - Legal - Privacy - Data Use and Sharingを解消する
ユーザーの情報を取得しているとATTを入れないと審査でリジェクトされる。
解決方法はシンプルでATTを追加するだけ。
info.plistに下記のコードを追加
<key>NSUserTrackingUsageDescription</key>
<string>This app uses tracking data to show you personalized ads.</string>
インストール
flutter pub add app_tracking_transparency
ATTのダイアログを表示する処理
Future<void> initATT() async {
if (await AppTrackingTransparency.trackingAuthorizationStatus ==
TrackingStatus.notDetermined) {
await showCustomTrackingDialog(context);
await Future.delayed(const Duration(milliseconds: 200));
await AppTrackingTransparency.requestTrackingAuthorization();
}
}
splash画面でATTを表示
インストール
実装
splash画面を表示してそこでinitATT()を表示する。その処理が終了したらsplash画面を閉じる。
void main() {
WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
await initATT();
FlutterNativeSplash.remove();
runApp(const MyApp());
}
Future<void> initATT() async {
if (await AppTrackingTransparency.trackingAuthorizationStatus ==
TrackingStatus.notDetermined) {
await showCustomTrackingDialog(context);
await Future.delayed(const Duration(milliseconds: 200));
await AppTrackingTransparency.requestTrackingAuthorization();
}
}
Discussion