Flutter is an open-source UI development kit that was announced by Google in 2017. Flutter aims to develop and deploy multiple environments are Android, iOS, Linux, macOS, Windows, and Google Fuchsia. In this section, we’ll go over how to create and publish a Flutter app for the iOS platform.
- First and foremost, we require the XCode application on a Mac, which is used to develop the application and release it on the App Store or to a specific organization.
- registering for the Apple Developer Program with an Apple ID.
- The respective bundle ID must be registered with signing and provisioning certificates.
- As of April 2024 all iOS and iPadOS apps submitted to the App Store must be built with a minimum of Xcode 15 and the iOS 17 SDK.
- Uploading the iOS app to the app store, needs Mac OS minimum version is 13.5 and minimum version of Xcode version is 15.
Enrolling Apple Developer Program
- If you want individual membership, it is available by entering personal information and paying the annual membership fee.
- Customer needs an organization, first getting the DUNS number with proper registration.
- Enter the information with a nine-digit DUNS number.
- Complete the purchase to enroll the account
- Customer needs a individual apple developer program, proceed without Duns number to purchase the account.
Creating Certificates, Bundle Identifiers, Profiles
An “App ID” is a unique identifier that iOS app uses to allow your application to connect to the services and features that were provided by Apple and register the app with a unique App ID and include what services and features it uses.
Unique identifier for your app to avoid conflicts with other apps.
Reversible format is domain:com.mycompany
Bundle ID – com.mycompany.myapp
Select the platform which you want, describe about the app id, and give the bundle id which is give to reverse domain format.
Create iOS Certificate
Add a new certificate to the CSR (certificate signing request) file, which is uploaded to the Certificate Authority (CA) to request a certificate.
Certificates identify who signed an app or is accessing a service. First, you need to set up various Apple-issued digital certificates to develop and distribute apps and connect to app services.
Choose a feature that we are currently using in the application. First need to signing request from apple authority, They will approve and give the signing request certificate. The request authority will use to create your certificate.
Step 1. Search Keychain Access and choose certificate assistant -> request a certificate from a certificate authority.
Step 2. After Complete the above process, Go to Developer account site-> Create certificates -> create certificate signing request -> upload your downloaded certificate request file.
The iOS certificates are containing two types:
- App Development
- App Distribution
The Apple development signs the versions of iOS, MacOS, and etc., Using this certificates we can only developing and testing internally.
There are four types of distribution processes are mentioned in given below:
Create iOS Provisioning Profiles
There are 4 types certificates
App Store Connect
Using this certificate we can distributed on TestFlight and the App Store.
Ad – Hoc
This will be provided to distribute the app to a limited number of iOS app devices outside the App Store.
The certificate developed and deployed for the organization’s people.
Using this certificates we can only developing and testing internally.
Distribute iOS App to App Store Connect
Go to the XCode menu at the top and select the product folder to archive. After archiving your build, you can distribute it directly to the App Store.
There is the option to connect directly to App Store Connect. Go to the app store connect site enter the information related to the app, submit the app to test flight.
The flowchart shows the complete iOS setup for deploying the Flutter app.
We can develop Android and iOS apps maintain the same codebase.
The Flutter-featured applications are very compatible and are native apps for iOS app and Android app platforms. From this post, we looked how to develop and deploy the iOS app in very first time using flutter framework.