-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
[upload_app_privacy_details_to_app_store] fix error when Info.plist
contains NSUserTrackingUsageDescription
#20695
base: master
Are you sure you want to change the base?
Conversation
Hey, I'm a colleague of @gavrichards and just tested this. Your binary indicates that your app tracks users. - Your app indicates that you track users. And instead I got this: [fastlane] [12:37:26]: Looks like you're attempting to make changes to your ADVERTISING_DATA app privacy details.
[fastlane] [12:37:26]: Please make this change manually via App Store Connect. Since this is a one-off (and rare) situation, which the App Store Connect API doesn't really support, unfortunately this is the only solution for now.
[fastlane] [12:37:26]: Don't forget to download the app privacy details using the 'download_app_privacy_details_from_app_store' action when you're done, to update the local json.
[fastlane] [12:37:26]: App data usage is already published I'm guessing the issue is Apples API not letting you do the things it we need it to do? After that though I was able to get the App submitted to Apple. Whether they approve remains to be seen! Forewarning for other users though, I did get the following error to start with when using the fix. [fastlane] [12:37:40]: The provided entity includes a relationship with an invalid value - You cannot create a new version of the App in the current state. - /data/relationships/app
[fastlane] The provided entity includes an attribute with a value that has already been used - The version number has been previously used. - /data/attributes/versionString After investigating, it was simply because in previous build attempts it had already created this new version within the App Store before it failed on the "Your binary indicates that your app tracks users" error. After realising this I was able to just submit for review manually via App Store Connect. |
@mikebarlow thanks for reporting back! Did you actually do what the message indicated you had to do, though?
If you do that, you're only going to see that message once. Next time it won't happen anymore, and it'll just start working from then on. |
We're still seeing this issue. Any chance of this PR being merged? |
Checklist
bundle exec rspec
from the root directory to see all new and existing tests passbundle exec rubocop -a
to ensure the code style is validci/circleci
builds in the "All checks have passed" section of my PR (connect CircleCI to GitHub if not)Motivation and Context
Resolves #17895
Resolves #19487
Resolves #19781
Description
The problem was well described in the associated tickets, but basically: Apple does server side validation when attempting to delete
ADVERTISING_DATA
and the app's Info.plist containsNSUserTrackingUsageDescription
馃槵 So we can't delete it.Design Decisions
I thought of adding an option like this:
But I ended up realizing that it probably would be too useful. People changing these configs are not something common, specially the advertisement one, probably. So when they do, it's a one-off, so they can do it manually via App Store Connect (like I explained in the
UI.important
messages - please review them 馃 )Fun Facts
When the data is something like:
The API returns 2 elements for
ADVERTISING_DATA
(DATA_NOT_LINKED_TO_YOU
andDATA_USED_TO_TRACK_YOU
). If you attempt to delete each of them, both will fail (HTTP 409):However, the
DATA_NOT_LINKED_TO_YOU
actually gets deleted although it errors out, whereas theDATA_USED_TO_TRACK_YOU
really can't be deleted. 馃し馃し馃しTesting Steps
To test this branch, modify your Gemfile as:
And run
bundle install
to apply the changes.Tagging people who were having issues with this:
Perhaps someone could help me triple check if my fix is alright? 馃檱