(Illustration: Formosan Blue Magpie, which is a endemic species in Taiwan, flapping its wings. Image source: Wikipedia。)
Issue Description
One of our iOS app built by Flutter is having Missing Compliance status in the TestFlight section in App Store Connect. We need to manage it via the App Store Connect UI all the time when we distribute a build into App Store Connect.
Contents
The “Manage” link leads to a popup box:
We follow the instruction of the official document “Complying with Encryption Export Regulations” and would like to automate this process in the code.
Solution
The official document mentions we can declare the app’s use of encryption by adding the ITSAppUsesNonExemptEncryption key to the app’s Info.plist.
This file locates at “ios/Runner/Info.plist” in our Flutter project.
The solution:
Add the ITSAppUsesNonExemptEncryption key to Info.plist (Please modify false in the second line to fit your case, it can be true (Yes) or false (No). If you don’t know how to proceed, please refer to the official document “Complying with Encryption Export Regulations”.):
1 2
<key>ITSAppUsesNonExemptEncryption</key> <false/>
After adding the key, the “ios/Runner/Info.plist” file looks like this:
|
|
If you enjoy the solution, please feel free to buy me a cup of coffee ☕ :)
Reference
- Documents:
- “Declare Your App’s Use of Encryption” at Apple Developer.
- The content of the “Export Compliance Information” popup message box:
Export Compliance Information
Does your app use encryption? Select Yes even if your app only uses the standard
encryption within Apple’s operating system.
- Yes
- No
Export laws require that products containing encryption must be properly authorized
for export. Failure to comply could result in severe penalties. Learn More