Skip to content

Apple App Store Deployment

FlutterFlow Studio allows you to deploy your apps directly to the App Store from within the platform. This guide covers all the necessary prerequisites, a step-by-step deployment process, and common troubleshooting tips.

Deploy to App Store

The App Store deployment involves the following steps:

1. Create a Bundle Identifier

A Bundle Identifier (ID) is a unique string that identifies your app within the Apple ecosystem, typically formatted in reverse domain name notation like com.example.myapp.

To create a Bundle ID, visit the Certificates, IDs & Profiles page, add a new App ID, and provide these details:

  1. Bundle ID: Copy the Package Name from FlutterFlow Studio.
  2. Description: Add a brief description of your app.
  3. Capabilities: Select the necessary app capabilities. Ensure you select Push Notifications if your app uses them, and Sign In with Apple if your app includes that feature.

2. Add New App

App Store Connect is the platform used for submitting apps, managing app metadata, and much more. To add a new app, open the App Store Connect and then follow the official steps outlined here.

3. Add Apple App ID to FlutterFlow Studio

An App ID is used by Apple to identify your app and associate it with your development team.

To add your App ID to FlutterFlow Studio, go to App Store Connect > My Apps, copy your Apple ID from App Information, and paste it into the App ID field in FlutterFlow Studio > Settings & Integrations > Mobile Deployment > App Store.

4. Generate API key and add to FlutterFlow Studio

To generate your API Key, go to App Store Connect > Users and Access > Integrations > Team Keys. If you haven’t added a key before, you will see a Request Access button. For further details, watch a demo here.

Generate a new API key by selecting Add (+), entering a name, and assigning the App Manager role. Once the key is generated, download it and upload it to FlutterFlow Studio under Settings & Integrations > App Settings > Mobile Deployment > App Store > Private Key.

5. Add issuer ID to FlutterFlow Studio

Copy the Issuer ID from App Store Connect by navigating to Users and Access > Integrations > Team Keys, and then paste it into the Issuer ID field under App Store settings in FlutterFlow Studio.

6. Add Key ID to FlutterFlow Studio

Return to App Store Connect > Users and Access > Integrations > Team Keys. Find the row for the API Key you generated here, select Copy Key ID, and then paste it into the Key ID field under App Store settings in FlutterFlow Studio.

7. Deploy

To deploy your app from FlutterFlow Studio, go to Settings & Integrations > App Settings > Mobile Deployment > App Store and click Deploy To App Store. Once deployed, you will receive an email from App Store Connect that a new build has been added to your app.

deploy-to-appstore.avif

8. Submit your app for App Store approval

From App Store Connect, select My Apps and choose your app. Select Prepare for Submission, add the app assets and metadata, and then click Add for Review.

add-for-review.avif

Your app will now be reviewed by Apple. For additional information on Apple’s review guidelines, please see this link.


Video guide

Watch this video if you prefer watching a video tutorial.


FAQs

Invalid App Store Icon. The App Store Icon in the asset catalog in ‘Runner.app’ can’t be transparent nor contain an alpha channel.

You need to update your App Launcher Icon (under Settings & Integrations –> General) with an image that isn’t transparent and/or doesn’t contain an alpha channel.

After submitting my iOS app to the App Store, I am getting an ‘ITMS-91053: Missing API declaration’ issue. What should I do?

Apple requires that apps using certain APIs have a Privacy Manifest file that declares the reason for using the API. Apple will begin requiring this file for App Store approval on May 1, 2024.

Most packages that FlutterFlow Studio uses already have a Privacy Manifest created by the package author or FlutterFlow team. However, there may be some cases where packages don’t have the necessary privacy manifest needed.

Similarly, if you have written custom code that calls these APIs directly or uses a package that calls the APIs, you must ensure that your app has the required manifest file.

Here are the steps you can take to resolve this issue:

  1. See if the custom package you use is listed here; ensure to use the latest version if you are using any of these.
  2. If unsure which package is using protected APIs, you may be able to use a tool like this to identify them. Once identified, update to the latest versions, as the package author may have addressed compliance issues.
    1. To verify, look into the package’s changelog or source code for a PrivacyInfo.privacy file, which indicates compliance (examples here and here).
    2. If the current package hasn’t resolved the issue, consider using an alternative package that complies, or contact the package’s maintainer for a fix.
  3. If you have written a custom iOS code that is accessing the APIs:
    1. In FlutterFlow Studio, navigate to Settings & Integrations > App Settings > Privacy Manifest Configuration.
    2. Activate the necessary API reasons and select the appropriate reasons from the dropdown. A detailed explanation of each API reason can be found here.

privacy-manifest-configuration

Last updated on