Skip to main content

App Bundle

This command is used to build ios application bundle.

caution

This command only work on Max OS X.

Default

By default this command will build the project with the release version staging flavor.

morpheme build ios

After the building process is complete, we can check the .ipa file in the build/ios/ipa/ or we can use the archive file in build/ios/archive/ folders.

Options :

morpheme build ios [flavor/environment] [app_version] [custom_target] [build_number] [build_name] [[no-]obfuscate] [split-debug-info]
  • Flavor/Environment :
Flavor/EnvironmentAlternativeDescription
-f dev--flavor devBuild project on dev environment (Default)
-f stag--flavor stagBuild project on staging environment
-f prod--flavor prodBuild project on production environment
  • Generate l10n :
Generate l10nDescription
--[no]l10nGenerate l10n first before running other command. (defaults to on)
  • App Version :
App VersionDescription
--debugBuild project on debug mode (Default)
--profileBuild project on profile mode
--releaseBuild project on release mode (Default)
  • Custom Target :
Custom TargetAlternativeDescription
-t [url_file]--target [url_file]This command is used to build the application in a specific file, by default it will run the lib/main.dart file.
  • Custom Build Name :
Build NameDescription
--build-name [build_number]This command is used to build application with a specific name.
  • Custom Build Number :
Build NumberDescription
--build-number [build_number]This command is used to build application with a specific version number.
  • No Obfuscate :
Build NumberDescription
--[no-]obfuscateIn a release build, this flag removes identifiers and replaces them with randomized values for the purposes of source code obfuscation. This flag must always be combined with "--split-debug-info" option, the mapping between the values and the original identifiers is stored in the symbol map created in the specified directory. For an app built with this flag, the "flutter symbolize" command with the right program symbol file is required to obtain a human readable stack trace. (defaults to on)
  • Split Debug Info :
Build NumberDescription
--split-debug-infoIn a release build, this flag reduces application size by storing Dart program symbols in a separate file on the host rather than in the application. The value of the flag should be a directory where program symbol files can be stored for later use. These symbol files contain the information needed to symbolize Dart stack traces. For an app built with this flag, the "flutter symbolize" command with the right program symbol file is required to obtain a human readable stack trace. This flag cannot be combined with "--analyze-size". (defaults to "./.symbols/")

Example - Custom Version

  1. Debug Version

    morpheme build ios --debug
  2. Profile Version

    morpheme build ios --profile
  3. Release Version

    morpheme build ios --release

Example - Custom Environment/Flavor

  1. Dev Environment
    morpheme build ios -f dev
    Alternative:
    morpheme build ios --flavor dev
  2. Staging Environment
    morpheme build ios -f dev
    Alternative:
    morpheme build ios --flavor dev
  3. Production Environment
    morpheme build ios -f dev
    Alternative:
    morpheme build ios --flavor dev

Example - Custom Version and Environment Combination

morpheme build ios --release -f prod

Example - Custom Target

morpheme build ios --target [url_file *optional]

Alternative:

morpheme build ios --t [url_file *optional]

Example - Custom morpheme.yaml

morpheme build ios --morpheme-yaml [custom_path]

Example - Custom Build Number

morpheme build ios --build-number [build_number]

For example, we create an appbundle file with the custom build number 1.0.0

morpheme build ios --build-number 1.0.0

Example - Custom Build Name

morpheme build ios --build-name [build_name]

For example, we create an appbundle file with the name application_release

morpheme build ios --build-name application_release

Example - No Obfuscate

morpheme build ios --[no-]obfuscate

Example - Split Debug Info

morpheme build ios --split-debug-info