Title: Flutter Android / iOS Build Preparation
1Flutter Android / iOS Build Preparation
We are driven to solve digital challenges.
2List of Topics
- Android build Preparation
- iOS build Preparation
3Android build Preparation
- Hardware requirements
- A 64-bit environment is required for Android
2.3.x (Gingerbread) and higher versions. - At least 250GB of free disk space to check out
the code and an extra 150 GB to build it. - At least 16 GB of available RAM is required, but
Google recommends 64 GB. - The build process involves many tools and
processes that convert your project into an
Android App Bundle (AAB). - AAB create via .keystore or .jks(java KeyStore).
Once created bundle we need to one play store
account. It will cost around 25 lifetime. -
4Sign the apk or app bundle
- How to sign the apk or app bundle created using
flutter ? - To publish your app on Play Store, you need to
give your app a digital signature. - step 1 Create a new keystore file if you have
an existing keystore , skip this step - Run command in your terminal for
linux/mackeytool -genkey -v -keystore /key.jks
-keyalg RSA -keysize 2048 -validity 10000 -alias
key - On Windows, use the following commandkeytool
-genkey -v -keystore c/Users/USER\_NAME/key.jks
-storetype JKS -keyalg RSA -keysize 2048
-validity 10000 -alias key - Fill in the required info inside the terminal
5Sign the apk or app bundle
Step 2 Modify your build.gradle(app) file
signingConfigs release
storeFile file("ltpath-to-keys.jksgt")
storePassword "" keyAlias
"ltkey-aliasgt" keyPassword ""
6Sign the apk or app bundle
step 3 how to create APK file or Android App
Bundle using flutter ? How to build an android
app bundle (aab) using flutter ? Running flutter
build defaults to a release build flutter build
appbundle Note release bundle for your app is
created at /build/app/outputs/bundle/release/app.a
ab How to build apk file using flutter ? flutter
build apk How Many App Provider Store in market?
7List Of Top App Provider Store
- Google Play Store. The Google Play Store, which
hosts movies and other content as well as apps,
was one of the first mobile app stores. ... - Apple App Store. ...
- Samsung Galaxy Apps. ...
- LG SmartWorld. ...
- Huawei App Store. ...
- Sony Apps. ...
- Amazon Appstore. ...
- Aptoide.
- Lets create new account play store
8Create new Play Console Developer Account
- Open Below Link
- https//play.google.com/console/about/
- Click blue box button and login your google
account.
9Create new Play Console Developer Account
3) To get started, choose an account type. You
can choose as per your requirements. And fill all
the details and make payment of 25
10Create new Play Console App
4) Once payment done, Need to create an app, As
per the below image blue box button. 5) Fill
the all App details and click on create button
11List of Apps
6) Once app created, Click (1) all apps and
Click your (2) newly created app(Sample app) row.
12- App Dashboard
- Start testing now
- While you're getting set up, the Dashboard shows
you what you need to do to get your app up and
running. This includes recommendations on how to
manage, test, and promote your app. Once you've
completed a task, come back here to explore what
else you can do. - Start testing now
- Release your app early for internal testing
without review - Share your app with up to 100 internal testers to
identify issues and get early feedback - Select testers
13- App Dashboard
- Set up your app
2) Set up your app Provide information about
your app and set up your store listing Let us
know about the content of your app, and manage
how it is organized and presented on Google
Play LET US KNOW ABOUT THE CONTENT OF YOUR APP
Set privacy policy News apps
App access COVID-19 contact tracing and status apps
Ads Data safety
Content rating Government apps
Target audience
14- App Dashboard
- Release your app
3) Release your app Test your app with a
larger group of testers that you control With
closed testing, you can test your app with larger
groups of testers. You can control access using
email addresses or Google Groups. SET UP YOUR
CLOSED TEST TRACK CREATE AND ROLL OUT A
RELEASE
Select countries and regions
Select testers
Create a new release
Review and roll out the release
15iOS build Preparation
Xcode system requirements https//developer.apple
.com/support/xcode/ Image result for ios build
The Xcode build system manages the tools that
transform your code and resource files into a
finished app. When you tell Xcode to build your
project, the build system analyzes your files and
uses your project settings to assemble the set of
tasks to perform. Apple developer account cost
100 (per year) Preliminaries Xcode is required
to build and release your app. You must use a
device running macOS to follow this
guide. Before beginning the process of releasing
your app, ensure that it meets Apples App Review
Guidelines. In order to publish your app to the
App Store, you must first enroll in the Apple
Developer Program. You can read more about the
various membership options in Apples Choosing a
Membership guide.
16Register App Store
Register your app on App Store Connect Manage
your apps life cycle on App Store Connect
(formerly iTunes Connect). You define your app
name and description, add screenshots, set
pricing, and manage releases to the App Store and
TestFlight. Registering your app involves two
steps registering a unique Bundle ID, and
creating an application record on App Store
Connect. For a detailed overview of App Store
Connect, see the App Store Connect guide.
17Register a Bundle ID
- Every iOS application is associated with a Bundle
ID, a unique identifier registered with Apple. To
register a Bundle ID for your app, follow these
steps - Open the App IDs page of your developer account.
- Click to create a new Bundle ID.
- Enter an app name, select Explicit App ID, and
enter an ID. - Select the services your app uses, then click
Continue. - On the next page, confirm the details and click
Register to register your Bundle ID.
18Register a Bundle ID
Register a new identifier https//developer.apple.
com/account/resources/identifiers/add/bundleId
19Register a Bundle ID
Register a new identifier Select a type
20Register a Bundle ID
Register an App ID and select Capabilities and
App Services
21Register a New Device
https//developer.apple.com/account/resources/devi
ces/add
22Create a certificate signing request
https//developer.apple.com/help/account/create-ce
rtificates/create-a-certificate-signing-request/ K
eychain Access on your Mac allows you to create a
certificate signing request (CSR). Open keychain
in your mac system. And follow above link step.
Where use this? ? Create a New Certificate
Upload a Certificate Signing Request To manually
generate a Certificate, you need a Certificate
Signing Request (CSR) file from your Mac.
23iOS build provisioning profile
What is a provisioning profile code signing in
iOS? Apple Developer Program membership is
required to request, download, and use signing
certificates issued by Apple. iOS Distribution
Certificate (in-house, internal-use apps) Users
will no longer be able to run apps that have been
signed with this certificate. You must distribute
a new version of your app that is signed with a
new certificate. Developer ID Installer
Certificate (Mac applications) If your
certificate expires, users can no longer launch
installer packages for your Mac applications that
were signed with this certificate. Previously
installed apps will continue to run however new
installations won't be possible until you have
re-signed your installer package with a valid
Developer ID Installer certificate. If your
certificate is revoked, users will no longer be
able to install applications that have been
signed with this certificate.
24iOS build provisioning profile
Ad-Hoc certificate? The Ad-Hoc certificate
allows you to build your app to run on a
predetermined list of devices. There are a couple
big caveats though You need the UDID of every
device you want the app to run on. The user needs
to install the provisioning profile for the app
as well as the device manually.
25iOS build provisioning profile
Open below link for create certificate https//dev
eloper.apple.com User can create as per
requirement certificate.
26Create a New Certificate
https//developer.apple.com/account/resources/cert
ificates/add
27Register a New Provisioning Profile
https//developer.apple.com/account/resources/prof
iles/add
28App Store create app
- Create an application record on App Store Connect
- Register your app on App Store Connect
- Open App Store Connect in your browser.
- On the App Store Connect landing page, click My
Apps. - Click in the top-left corner of the My Apps
page, then select New App. - Fill in your app details in the form that
appears. In the Platforms section, ensure that
iOS is checked. Since Flutter does not currently
support tvOS, leave that checkbox unchecked.
Click Create. - Navigate to the application details for your app
and select App Information from the sidebar. - In the General Information section, select the
Bundle ID you registered in the preceding step. - For a detailed overview, see Add an app to your
account.
29Xcode project settings
- Review Xcode project settings
- This step covers reviewing the most important
settings in the Xcode workspace. For detailed
procedures and descriptions, see Prepare for app
distribution. - Navigate to your targets settings in Xcode
- Open the default Xcode workspace in your project
by running open ios/Runner.xcworkspace in a
terminal window from your Flutter project
directory. - To view your apps settings, select the Runner
target in the Xcode navigator.
30Xcode important settings
Verify the most important settings. In the
Identity section of the General tab Display
Name The display name of your app. Bundle
Identifier The App ID you registered on App Store
Connect.
31Xcode important settings
In the Signing Capabilities tab Automatically
manage signing Whether Xcode should automatically
manage app signing and provisioning. This is set
true by default, which should be sufficient for
most apps. For more complex scenarios, see the
Code Signing Guide. Team Select the team
associated with your registered Apple Developer
account. If required, select Add Account, then
update this setting. In the Deployment section
of the Build Settings tab iOS Deployment
Target The minimum iOS version that your app
supports. Flutter supports iOS 11 and later. If
your app or plugins include Objective-C or Swift
code that makes use of APIs newer than iOS 11,
update this setting to the highest required
version.
32iOS build Preparation
The General tab of your project settings should
resemble the following
33iOS build app bundle
For a detailed overview of app signing, see
Create, export, and delete signing
certificates. Create an app bundle Run flutter
build ipa to produce an Xcode build archive
(.xcarchive file) in your projects
build/ios/archive/ directory and an App Store app
bundle (.ipa file) in build/ios/ipa. Consider
adding the --obfuscate and --split-debug-info
flags to obfuscate your Dart code to make it more
difficult to reverse engineer. If you are not
distributing to the App Store, you can optionally
choose a different export method by adding the
option --export-method ad-hoc, --export-method
development or --export-method enterprise.
34Xcode iOS build app bundle
Create an app bundle via Xcode Open Terminal and
go to iOS app project directory. Run command cd
.. to and go back flutter projects. Run flutter
clean and flutter pub get . Again Run cd iOS and
Run pod install after successful all pod install
open your project in Xcode. Start build Command
B, After successful build start to Archive
35Xcode iOS build app bundle
Once Archive successful, Follow below step to
create iOS build for
36Xcode iOS build app bundle
Step by Step create build.
37iOS build Release TestFlight
- Release your app on TestFlight
- TestFlight allows developers to push their apps
to internal and external testers. This optional
step covers releasing your build on TestFlight. - Navigate to the TestFlight tab of your apps
application details page on App Store Connect. - Select Internal Testing in the sidebar.
- Select the build to publish to testers, then
click Save. - Add the email addresses of any internal testers.
You can add additional internal users in the
Users and Roles page of App Store Connect,
available from the dropdown menu at the top of
the page. - For more details, see Distribute an app using
TestFlight.
38iOS build Release App Store
- Release your app to the App Store
- When youre ready to release your app to the
world, follow these steps to submit your app for
review and release to the App Store - Select Pricing and Availability from the sidebar
of your apps application details page on App
Store Connect and complete the required
information. - Select the status from the sidebar. If this is
the first release of this app, its status is 1.0
Prepare for Submission. Complete all required
fields. - Click Submit for Review.
- Apple notifies you when their app review process
is complete. Your app is released according to
the instructions you specified in the Version
Release section. - For more details, see Distribute an app through
the App Store.
39Obfuscating Dart code
Code obfuscation is the process of modifying an
apps binary to make it harder for humans to
understand. Obfuscation hides function and class
names in your compiled Dart code, making it
difficult for an attacker to reverse engineer
your proprietary app. The following list
describes which platforms support the obfuscation
process described in this page Android/iOS/macOS
(Supported) Linux/Windows (Not yet
supported.) Web Obfuscation is not supported for
web apps, but a web app can be minified, which is
similar. When you build a release version of a
Flutter web app, it is automatically minified.
For more information, see Build and release a web
app. Flutters code obfuscation, when supported,
works only on a release build.
40Flutter deployment
- Build and release an Android app
- Build and release an iOS app
- Build and release a macOS app
- Build and release a Linux app to the Snap Store
- Build and release a Windows desktop app
- Build and release a web app
- Continuous delivery with Flutter (CI-CD)
- Follow continuous delivery best practices with
Flutter to make sure your application is
delivered to your beta testers and validated on a
frequent basis without resorting to manual
workflows.
41Thank You
9series Solutions Pvt. Ltd Mobile 1 (425) 504
6109 Skype/Hangouts sales_at_9series.com Latest on
our blog https//www.9series.com/blog/
Any Questions?