Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Resolved App review rejection - AppTrackingTransparency

Discussion in 'iOS and tvOS' started by TheLastVertex, May 27, 2021.

  1. TheLastVertex

    TheLastVertex

    Joined:
    Sep 30, 2015
    Posts:
    126
    I'm running into an issue during app review that I'm unable to reproduce and should, as far as I'm aware, be solved and working correctly. I'm not getting any details from the reviewer regarding the specifics so shooting in the dark here.
    The problem being I'm already using the AppTrackingTransparency framework via Unity.Advertisement.IosSupport in Unity 2019.3.11f. I am however targeting "minimum iOS Version13.0". Does this require me to only target 14.5?

    Launching my app on iPhone 6s running iOS 14.5.1 successfully prompts the permission request to "Allow app to track your activity across other companies' app and websites?". This is called during a "fake" splash screen scene right after the Unity splash screen and before the main scene is loaded that uses unity ads, analytics, and login functionality etc..

    The only feedback I got back beside a reference to the guidelines is:
    Now there are a couple ways I know the permission request will not be shown in my current implementation:
    1.) The first being if the user has "Allow Apps to Request to Track" in their iOS settings disabled. Re-enabling this setting will prompt the permission the next time the app is started.
    2.) If the user is not on a version of iOS that supports the app tracking transparency framework. Running it on iOS 13 does not prompt the permission request.

    I'm assuming both of these are working as intended?

    So what am I missing? Am I doing something wrong here? Is there another permission I'm unaware of that needs to be prompted?
     
  2. TheLastVertex

    TheLastVertex

    Joined:
    Sep 30, 2015
    Posts:
    126
    Apple really doesn't seem to want to give details regarding the specific user flow they are going through that is resulting in the prompt not being triggered.

    I re-arranged the code slightly to also key off a player pref instead of just checking if authorization is undetermined. This should give me the prompt on first launch even if authorization is in some weird state I can't replicate.

    I'm also wondering if they are doing something like changing tracking permission mid session while the app is in background. As far as I'm aware there is no way to subscribe to something like "OnTrackingStatusChanged" etc. If they disabled "Allow Apps to Request to Track" before they launch, then re-enable it mid sessions. They won't get prompted until the next time the app starts....

    Is there a way to check tracking status change?
     
  3. TheLastVertex

    TheLastVertex

    Joined:
    Sep 30, 2015
    Posts:
    126
    Approval went through.

    From what I can tell it appears they weren't waiting long enough for the permission prompt in the initial reviews. After some testing I found the prompt can be EXTREMELY slow in appearing.

    Facebook / instagram for instance took 30-45 seconds for the permission to appear. So long it looks like the app isn't responding and the buttons no longer work, all because it's sitting their paused waiting for the permission to be shown.

    I didn't see this with my own app and I'm not sure what would cause it, but it appears beyond anyones control. I made a note of the possible delay in the review notes and resubmitted without issue.