i have an app that was approved by google store.
i implemented it also for apple, and it keeps getting rejected for privacy issues.
i obviously have a privacy agreement already, but its not it.
it seems like apple mechanism of user consent is more complex than google’s.
reason for rejection (copied from appstore, and this is the ONLY reason):
“Guideline 5.1.2 - Legal - Privacy - Data Use and Sharing
The app privacy information you provided in App Store Connect indicates you collect data in order to track the user, including Advertising Data, Device ID, Other Data Types, Purchase History, and Other Usage Data. However, you do not use App Tracking Transparency to request the user’s permission before tracking their activity.
Starting with iOS 14.5, apps on the App Store need to receive the user’s permission through the AppTrackingTransparency framework before collecting data used to track them. This requirement protects the privacy of App Store users.”
possibilities so far:
Initialize advertisements WITHOUT giving permissions whatsoever. advertisements will NOT be personalized at all. then removing all requests from tracking on the user.
IS THIS EVEN A FEASIBLE option?
revert Advertisements to older implementation, in order to have native support from Advertisement engine. even if this means the project will not support new devices!
implement a full consent mechanism for IOS14. this requires a lot of work, and i will be happy if someone could guide me through this, or even sell me a prefab that does this by itself.
i saw this guide, but it looks really complex. iOS 14 technical integration guides
If you have implemented Unity Ads SDK and have a privacy agreement, please copy and paste the below in your rejection appeal to Apple. If your appeal gets rejected then we can escalate to Apple. In this case, please send an email to unityads-support@unity3d.com.
If you have any other questions please let me know.
Hello @Unity_Jae ,
Thank you for the quick reply.
I did not implement the privacy consent mechanism (apologies if it was not clear from my post). Side note: I expected unity to take care of such “beaurocratic” stuff, that are really not related to game development.
BUT, for now, let’s keep complaints out of this discussion, because I have 3 apps that are stuck because of this issue.
What do I need to do?
Is there a way to NOT implement the consent? Can I initialize Unity Ads WITHOUT personalization at all (and then declare to apple that I do not track anything)? This is the ONLY tracking mechanism I have in these apps! I have no database and it is pure single player experience.
At the moment I just want to upload the apps to the store. Then, we can make other developments and improvements to the various mechanisms.
What version of the Ads SDK they are using? To be compliant with iOS 14s ATT policy, developers have to use at least SDK 3.5.1. With that version, the ATT prompt should be presented automatically, although it isn’t possible to configure the message unless you also install the iOS Support package from Package Manager.
Also, it is not possible to initialize the Ads SDK without requesting the IDFA.
hi @Unity_Jae
i am using Advertisement v3.7.5.
the popup FOR SURE not automatically pops up.
and this was actually my expectation from unity from unity side, so i am happy that we are aligned there.
should i:
install version 4.0.0 of the Advertisements (or this will cause other API issues for me?)
reinstall the 3.7.5
p.s. i have installed the IOS 14 advertising support v1.2.0. but i would be happy if i dont need to go into those details.
all i want is to get approved by apple. i believe user will not care about this stuff…
You need to show the iOS tracking request, an easy way to do this is to download the asset from the asset store.
An extremely minor tweak is needed in an objective c file (just comment out 2 lines) - I can tell you which ones (because the developer hasn’t updated in a while but that will make it work with iOS 15, some changes were made in iOS 15 to affect showing of the ATT prompt). I use it in my projects and it works well.
sorry, but i believe Unity Ads SDK should help us with this technical issue. this is a native point, and this is exactly why i chose Unity as my engine - to worry about those technical points of the devices. apple is not a “small” customer, and i expect unity to take care about it.
I agree with you on this as well. This functionality should be built into the Unity Ads SDK if not already implemented in 4.1.0. I object to paying for a plugin that provides functionality that should native to the Unity Ads package.
Just a heads up because I have the same problem: I implemented the privacy choice based on unitys example and it’s the first thing that shows, further no ads initialised before the choice is made … Still rejected by Apple for the same reason as you.
Unity ads probably messed up something.
We can assume that it’s currently not possible to publish an app to iOS using Unity Ads until they fixed it.
EDIT: Shame on me, it wasn’t Unity, it was Apple who messed up. I was right that everything was correctly implemented and setup. When I asked Apple what is wrong, they concluded that nothing is wrong and approved the app without me needing to change anything.
Ok yh, once you’ve imported the asset, go to Assets/Balaso Software/Plugins/iOS/AppTrackingTransparency.mm
And in the requestTrackingAuthorization method, comment out the #ifdef and #endif lines and it should work.