Skip to content
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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: submitting to ios app store results in ITMS-91053: Missing API declaration error #1365

Open
1 task done
modosc opened this issue Mar 17, 2024 · 4 comments
Open
1 task done

Comments

@modosc
Copy link

modosc commented Mar 17, 2024

Detailed steps on how to reproduce the bug

  1. submit to the ios app store
  2. get an email like this:
ITMS-91053: Missing API declaration - Your app’s code in the “NNN” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “NNN” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “NNN” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.

What is the expected behaviour?

  1. there should be no errors (this is the first time i've seen these in 3+ years of publishing this app)
  2. juce should either:
    a. stop using these apis, or
    b. add projucer settings to configure these to quiet the errors

Operating systems

iOS

What versions of the operating systems?

any, this is specific to the app store

Architectures

ARM

Stacktrace

No response

Plug-in formats (if applicable)

No response

Plug-in host applications (DAWs) (if applicable)

No response

Testing on the develop branch

I have not tested against the develop branch

Code of Conduct

  • I agree to follow the Code of Conduct
@marcussatellite
Copy link

This is not a bug in JUCE, but rather a new requirement from Apple.

Great tutorial here, with Apple documentation:

https://mastodon.social/@chockenberry/112095424613859371

@modosc
Copy link
Author

modosc commented Mar 18, 2024

This is not a bug in JUCE, but rather a new requirement from Apple.

Great tutorial here, with Apple documentation:

https://mastodon.social/@chockenberry/112095424613859371

i understand how to make this work, but this happens because juce is using these APIs, not because an end user explicitly called them. the ios exporter should automatically generate the privacy manifest for the APIs it is using.

@chriscope-RODE
Copy link

Also started to encounter this new requirement from Apple App Store Connect. I do feel like the JUCER IOS exporter should be making these arrangements as the warning is generated when using a very vanilla default PROJUCER setup

@phraemer
Copy link

There needs to be a way to specify a PrivacyInfo.xcprivacy from CMake too. Tried using PLIST_TO_MERGE but that doesn't work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants