poingstudios / godot-admob-ios

Godot's AdMob Plugin for iOS with support for Mediations.
https://poingstudios.github.io/godot-admob-plugin/
MIT License
89 stars 14 forks source link

[FEATURE] App Tracking Transparency #102

Closed dusanx closed 4 weeks ago

dusanx commented 1 month ago

Is your feature request related to a problem? If so, please describe.

Godot game was just rejected with

Guideline 5.1.2 - Legal - Privacy - Data Use and Sharing

The app privacy information provided in App Store Connect indicates the app collects data in order to track the user, including Performance Data, Coarse Location, Device ID, Advertising Data, Product Interaction, and Crash Data. However, the app does not use App Tracking Transparency to request the user's permission before tracking their activity.

Apps need to receive the user’s permission through the AppTrackingTransparency framework before collecting data used to track them. This requirement protects the privacy of users.

I think I understand https://poingstudios.github.io/godot-admob-plugin/privacy/user_messaging_tools/get_started/ section of the documentation but Apple doesn't want that and expects https://developer.apple.com/documentation/apptrackingtransparency (or at least expects first + second one).

What feature or improvement would you like to see?

Is this feature accessible from Godot but with documentation missing?

Is it yet to be implemented?

Can you please provide better documentation for the whole "User Messaging" process? It is not entirely clear what kind of message Apple expects to see in order for this plugin to be used with Godot.

If there is better place to ask this questions please point me there.

If you need help implementing this I may be able to jump in but at this stage I don't know what is supported and what is missing.

Additional context

No response

dusanx commented 1 month ago

Best documentation I could find so far is at https://developers.google.com/admob/ios/privacy/strategies#request It should be easy to add this request to the existing plugin but I'd really love to avoid fiddling with code myself -- all the new App Store submissions with Godot using godot-admob will be rejected until this is sorted out.

gumaciel commented 1 month ago

Hi try to add AppTrackingTransparency framework to your Xcode project

dusanx commented 1 month ago

I have added NSUserTrackingUsageDescription into plist and AppTrackingTransparency framework but I am still getting what looks like wrong/web looking dialog? Invocation code is identical to one in documentation for this plugin. If this should result in Apple's privacy dialog I can assume I did something wrong on this end. Image attached. IMG_0048

dusanx commented 4 weeks ago

It works! Thank you so much, I'll send some coffee over weekend ;) Problem was that I defined both "European regulations" and "IDFA explainer" for the same iOS game. When they are defined that way admob shows web/android like dialog. Defining only "IDFA explainer" and it shows proper iOS tracking dialog. This could be something that should reach the documentation but in general this works well and I'll close the issue.