Android Things is designed for security. The Android Things Console helps developers keep devices secure by updating the Android Things operating system automatically. These updates consist of minor OS version releases (for example, 1.0.x) and security patches. Google provides the infrastructure to host and deliver updates, and the developer has final control.
Automatic updates are configured on a per-channel basis. You can turn off the automatic update feature for a channel by disabling the Auto-update OS toggle.
Each device is subscribed to a single channel (standard or custom) and thus is eligible to receive automatic updates provided the channel has a published OTA update with the build rollout set to 100%.
All channels update on the same schedule:
- An automatic update is released by Google on the Android Things Console. This triggers the build process on each channel that has automatic updates enabled. Product owners and editors are notified via email and messaging within the Android Things Console.
- After a two week delay, the update is pushed to 10% of the devices on a channel. The remaining 90% of the devices continue to receive the last-published OTA update.
- After another week delay, the update is pushed to 100% of the devices on a channel.
If a channel does not receive an automatic update, the process is not retried. Check the console for more information on why the automatic update did not proceed (for example, if a channel had no active devices or published OTA update). In this case, you will need to manually publish the update.
An automatic update triggers the build process given the following conditions:
For a given channel with a current build rollout (Rollout %) set to 100%, the new build is created based on that current build and is pushed out per the timeline. The name for the new build follows the convention
<previous build name> - Autoupdate for X.X.X(where
X.X.Xis the updated Android Things OS version).
For a given channel with a current build rollout (Rollout %) set to less than 100%, no build is created for the channel. Devices on the channel will not be updated.
If there is no build on the channel, no build is created for the channel. Devices on the channel will not be updated.