App Store Connect
How to deploy a Flutter app to App Store and TestFlight using the Flutter workflow editor
Codemagic enables you to automatically publish your app to App Store Connect for beta testing with TestFlight or distributing the app to users via App Store. To do so, you must first set up iOS code signing and then configure publishing to App Store Connect.
Codemagic needs your Apple ID and app-specific password to perform publishing to App Store Connect on your behalf. Publishing to App Store Connect requires that the app be signed with App Store distribution certificate.
In addition, the application must be App Store ready for build distribution, meaning that it must have all the correct icons and icon sizes, otherwise App Store Connect will tag the binary as invalid, and you will not be able to distribute it at all.
It is also worth pointing out the necessity for each uploaded binary to have a different version, otherwise it will be refused by App Store Connect. See the Build versioning article for instructions on incrementing app version with Codemagic.
Setting up publishing to App Store Connect on Codemagic
- Navigate to the Publish section in app settings.
- Click App Store Connect.
- Enter your Apple ID (the email address used for login) and your app-specific password.
- Select Enable App Store Connect publishing at the top of the section to enable publishing.
Once you have successfully set up publishing to App Store Connect, Codemagic will automatically distribute the app to App Store Connect every time you build the workflow. Note that you must manually submit the app to App Store in App Store Connect.
Submitting an app to App Store
To make your iOS app available to the public, it must be submitted for review in App Store Connect.
- Log in to App Store Connect.
- Navigate to My Apps and identify the app you would like to publish to App Store.
- To start the submission process, click Prepare for Submission.
- Check that you app metadata is up to date, and once everything is ready, click the Submit for Review button.