Deploy a Live Update
Now that we've installed the Live Update SDK and pushed a commit to the Dashboard, we'll walk through the process of deploying a live update to a device.
Overview
The Live Update feature works by using the installed Live Update SDK in your native application to listen to a particular Deploy Channel Destination.
When a Web build is assigned to a Channel Destination, that update will be deployed to user devices running binaries that are configured to listen to the specified Channel Destination.
The terms "Web build", "deploy build", "live deploy" and "live update" can be used interchangeably. They all refer to an update provided to your user's device by Appflow's Deploy feature.
Triggering a Deploy Build
In order to deploy a live update, you will first need to create a Web build.
There are two ways to do this:
- Click the
Start build
button from theCommits
tab - Click the
New build
button in the top right from theBuild > Builds
tab
You will need to make sure you've selected the correct commit to deploy. Then select the Web
target platform and the Latest
build stack.
If your plan includes custom environments and you have configured at least one, you can select one from the provided dropdown list.
Finally, you can also enable the Live Update
and pick a Channel to automatically assign the build to once it completes successfully.
For the purposes of this tutorial, we will leave both options blank.
Once the build begins you will be able to watch its progress and look at the logs if you encounter errors.
Web Build Versioning
Once the Web Build completed, it can be restricted to a specific native build number assigned in the Web Build details. A minimum and maximum equivalent build version number are specified, which designates whether the update is compatible. After doing this, new native builds that are distributed within an app store do not conflict with the current available update from Appflow.
For more details and a simple use case see this article.
Assign the Build to a Channel
If you have trouble getting a successful build in the previous step, you can find answers to common Deploy build errors in this section of our knowledge base.
Once you have a successful Deploy build, you can assign it to the same Channel you configured the Live Update SDK to
listen to when you installed it by clicking the Deploy live updates
button in the build detail
page. You can also click the Deploy live updates
icon on the build in the Build > Builds
tab and select the Channel
from the dropdown.
Receiving a Live Update on a Device
For your application to receive a live update from Deploy, you'll need to run the app on a device or an emulator.
For Capacitor projects, the easiest way to do this is to use the cap run command to launch your local app in an emulator or a device connected to your computer.
npx cap run [ios | android] [options]
For Cordova projects, the equivalent command is ionic cordova run.
ionic cordova run [ios | android] [options]
If the app is configured correctly to listen on the channel that the live update was deployed to, the application should update immediately on startup if you're using the auto update method.
If you're using the background update method, just stay in the app for 30 seconds or so while the update is downloaded in the background. Then, close the application, reopen it again and you should see your update applied 🎉.
Disabling Deploy for Development
Generally speaking, if you are developing using an emulator and live reload you probably do not want Deploy to be active, as it can interfere with your local development.
We recommend setting the
DisableDeploy preference to true
in the config.xml
file during local development.
You can then set it back to false
before building your binary for release by either manually setting it back or using the native config feature if you're building native binaries.