Create a Release
In order to start pushing updates, you will need to create a release.
Creating a release builds and submits your app to Shorebird. Shorebird saves the compiled Dart code from your application in order to make updates smaller in size.
Create an Android release by running the following command:
shorebird release android
Example output:
If your application supports flavors or multiple release targets, you can specify the flavor and target using the --flavor
and --target
options:
By default, shorebird release android
builds an AppBundle (.aab
).
If you would like to also generate an Android Package Kit (.apk
), use the
following command:
To release with a different Flutter version, you can specify the version using the --flutter-version
flag.
Create an iOS release by running the following command:
shorebird release ios
Example output:
If your application supports flavors or multiple release targets, you can specify the flavor and target using the --flavor
and --target
options:
To release with a different Flutter version, you can specify the version using the --flutter-version
flag.
Depending on how you normally sign your iOS app, you may see an error at the end
of the build saying something like: Runner.app requires a provisioning profile with ___ feature
or that no signing certificate was found. This can be
addressed in a few ways:
If you are releasing on your local machine (i.e., not in a CI environment), this option is easier than the following options, but does not always work well in CI environments.
In Xcode, open your project and navigate to the βSigning & Capabilitiesβ tab. Ensure that βAutomatically manage signingβ is checked.
You may need to provide an ExportOptions.plist file to the shorebird release ios
command. This file is used by Xcode to determine which certificate and
provisioning profile should be used to sign the .ipa. An example of this file
is:
To use this file, pass it to the shorebird release ios
command:
You can view all of your releases for your current app (as defined by your shorebird.yaml) on the Shorebird console.
Deleting a release will remove all associated patches and artifacts and is not reversible.
You can delete a release for your current app (as defined by your shorebird.yaml) on the Shorebird console.
A common question we get asked is: Does Shorebird require publishing to the App Store or Play Store?
No. Shorebird works fine with side-loading and mobile device management (MDM) on Android. Weβve not had anyone try Shorebird with iOS Developer Enterprise program, but we expect it to work just as well.
To build Shorebird for distribution via APK (e.g. side-loading), use the
--artifact
flag with the shorebird release
command. For example:
That will produce both .apk and .aab files. You can distribute either or both as needed.