blob: a720216d43a4186d5122b061145db1935ac0f96d [file] [log] [blame]
<html devsite><head>
<title>OTA 更新</title>
<meta name="project_path" value="/_project.yaml"/>
<meta name="book_path" value="/_book.yaml"/>
</head>
<body>
<!--
Copyright 2017 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<p>正常使用的 Android 设备可以接收和安装系统、应用软件和时区规则的无线下载 (OTA) 更新。本部分介绍了更新包的结构以及所提供的用于编译更新包的工具。这些内容专供有以下需求的开发者参考:要将 OTA 更新用于新的 Android 设备以及要为已发布的设备编译更新软件包。
</p>
<p><em></em>OTA 更新旨在升级基础操作系统、系统分区上安装的只读应用和/或时区规则;这些更新不会影响用户从 Google Play 安装的应用。
</p>
<h2 id="ab_updates">A/B(无缝)系统更新</h2>
<p>在现代 Android 设备中,每个分区都存在两个副本(A 和 B)。当系统运行但处于空闲状态时,设备会将更新应用到当前未使用的分区。<em></em>A/B 设备不需要空间来下载更新软件包,因为它们可以在从网络中读取更新的同时应用更新;这称之为“流式传输 A/B”。如需详细了解 A/B 设备的 OTA 更新,请参阅 <a href="/devices/tech/ota/ab/index.html">A/B(无缝)系统更新</a>。如需查看示例应用以了解如何使用 Android 系统更新 API(即 <code>update_engine</code>)安装 A/B 更新,请参阅 <a href="https://android.googlesource.com/platform/bootable/recovery/+/master/updater_sample/" class="external">SystemUpdaterSample</a><a href="https://android.googlesource.com/platform/bootable/recovery/+/master/updater_sample/README.md" class="external"><code>updater_sample/README.md</code></a> 中提供了应用详情)。
</p>
<h2 id="nonab_updates">非 A/B 系统更新</h2>
<p>老款 Android 设备可在专用的恢复分区中使用软件解压下载的更新包并将更新应用到其他分区。有关详细信息,请参阅<a href="/devices/tech/ota/nonab/index.html">非 A/B 系统更新</a>
</p>
<h2 id="time-zone-updates">时区规则更新</h2>
<p>从 Android 8.1 开始,OEM 可以将更新的时区规则数据推送至设备,而不必进行系统更新。此机制使用户能够及时获得更新(从而延长 Android 设备的使用期限),并且使 OEM 能够独立于系统映像更新来测试时区更新。有关详细信息,请参阅<a href="/devices/tech/config/timezone-rules">时区规则</a>
</p>
</body></html>