deniza / app_tracking_transparency

A Flutter plugin to show ios 14+ tracking authorization dialog.
https://pub.dev/packages/app_tracking_transparency/
MIT License
83 stars 28 forks source link

No app tracking permission request after app reinstall / user change #34

Closed KubaStachecki closed 2 years ago

KubaStachecki commented 2 years ago

Hi! I run into this issue with app store review and my app got rejected:

"Regarding guideline 2.1, we found that the App Tracking Transparency permission request does not trigger after we uninstalled and reinstalled the app. We also registered through Sign In with Apple as a new user, and the permission request did not trigger."

Here is my code that triggers the request (after user registration is completed):

    final TrackingStatus status = await AppTrackingTransparency.trackingAuthorizationStatus;
    // setState(() => _authStatus = '$status');
    // If the system can show an authorization request dialog
    if (status == TrackingStatus.notDetermined) {
      // Show a custom explainer dialog before the system dialog
      await showCustomTrackingDialog(context);
      // Wait for dialog popping animation
      await Future.delayed(const Duration(milliseconds: 400));
      // Request system's tracking authorization dialog
      final TrackingStatus status = await AppTrackingTransparency.requestTrackingAuthorization();
}else{}

How can I reset App Tracking Transparency permission between user log in / log out and app reinstall?

Thank you!

deniza commented 2 years ago

App tracking permission automatically resets (to NotDetermined status) when you uninstall and reinstall your application. You can test this behaviour by using an actual device. It also works exactly the same way on a simulator.

KubaStachecki commented 2 years ago

Got it! Turns out that it was a misunderstanding with the AppStore team. Thank you for your quick response!