原文地址
模塊化系統(tǒng)組件
Android 10 或更高版本采用模塊化方式來處理一些 Android 系統(tǒng)組件,使其能夠在 Android 的常規(guī)發(fā)布周期外的時間進行更新。最終用戶設備可以從 Google Play 商店基礎架構或通過合作伙伴提供的無線下載 (OTA) 機制接收這些模塊化系統(tǒng)組件的更新。
關于模塊化系統(tǒng)組件
利用模塊化系統(tǒng)組件,Google 和 Android 合作伙伴能夠以非侵入方式廣泛、快速、無縫地向最終用戶設備分發(fā)更新。例如,媒體編解碼器碎片和嚴重錯誤可能會顯著降低應用的采用率和用戶互動度。頻繁更新媒體相關模塊可以減少編解碼器碎片,以使媒體應用在不同 Android 設備上的行為更加一致,并且可以修復嚴重錯誤,以建立用戶信任。
架構
Android 10 或更高版本會將選定的系統(tǒng)組件轉換為模塊,其中一些模塊采用 APEX 容器格式(在 Android 10 中引入),另一些則采用 APK 格式。借助模塊化架構,系統(tǒng)組件能夠根據(jù)需要以修復嚴重問題以及做出其他改進的方式進行更新,而不會影響較低級別的供應商實現(xiàn)或較高級別的應用和服務。
Android 10 或更高版本采用模塊化方式來處理一些 Android 系統(tǒng)組件,使其能夠在 Android 的常規(guī)發(fā)布周期外的時間進行更新。最終用戶設備可以從 Google Play 商店基礎架構或通過合作伙伴提供的無線下載 (OTA) 機制接收這些模塊化系統(tǒng)組件的更新。
關于模塊化系統(tǒng)組件
利用模塊化系統(tǒng)組件,Google 和 Android 合作伙伴能夠以非侵入方式廣泛、快速、無縫地向最終用戶設備分發(fā)更新。例如,媒體編解碼器碎片和嚴重錯誤可能會顯著降低應用的采用率和用戶互動度。頻繁更新媒體相關模塊可以減少編解碼器碎片,以使媒體應用在不同 Android 設備上的行為更加一致,并且可以修復嚴重錯誤,以建立用戶信任。
架構
Android 10 或更高版本會將選定的系統(tǒng)組件轉換為模塊,其中一些模塊采用 APEX 容器格式(在 Android 10 中引入),另一些則采用 APK 格式。借助模塊化架構,系統(tǒng)組件能夠根據(jù)需要以修復嚴重問題以及做出其他改進的方式進行更新,而不會影響較低級別的供應商實現(xiàn)或較高級別的應用和服務。

圖 1. 模塊化系統(tǒng)組件
模塊更新不會引入新的 API。它們僅使用由兼容性測試套件 (CTS) 保證的 SDK 和系統(tǒng) API,并且只會彼此之間進行通信,且只使用穩(wěn)定的 C API 或穩(wěn)定的 AIDL 接口。
您可以將更新后的模塊化系統(tǒng)組件打包在一起,并通過 Google(使用 Google Play 商店基礎架構)或 Android 合作伙伴(使用合作伙伴提供的 OTA 機制)將其推送到最終用戶設備。模塊軟件包會以原子方式安裝(和回滾),這意味著所有需要更新的模塊都會進行更新,或者所有模塊都不會進行更新。例如,如果某個需要更新的模塊出于某種原因無法更新,設備不會安裝軟件包中的任何模塊。
可用模塊
Android 包含以下模塊。
| 模塊名稱 | 軟件包名稱 | 類型 | 推出的版本 |
|---|---|---|---|
| adbd | com.android.adbd |
APEX | Android 11 |
| ART | com.android.art |
APEX | Android 12 |
| 強制門戶登錄 | com.android.captiveportallogin |
APK | Android 10 |
| CellBroadcast | com.android.cellbroadcast |
APEX | Android 11 |
| Conscrypt | com.android.conscrypt |
APEX | Android 10 |
| 設備調度 | com.android.scheduling |
APEX | Android 12 |
| DNS 解析器 | com.android.resolv |
APEX | Android 10 |
| DocumentsUI | com.android.documentsui |
APK | Android 10 |
| ExtServices | com.android.ext.services |
APK (Android 10)APEX (Android 11) | Android 10 |
| IPsec/IKEv2 庫 | com.android.ipsec |
APEX | Android 11 |
| 媒體編解碼器 | com.android.media.swcodec |
APEX | Android 10 |
| 媒體 | com.android.media |
APEX | Android 10(提取器、MediaSession API)Android 11 (MediaParser API) |
| MediaProvider | com.android.mediaprovider |
APEX | Android 11 |
| ModuleMetadata | com.android.modulemetadata |
APK | Android 10 |
| 網絡堆棧權限配置 | com.android.networkstack.permissionconfig |
APK | Android 10 |
| 網絡組件 | com.android.networkstack |
APK | Android 10 |
| NNAPI 運行時 | com.android.neuralnetworks |
APK | Android 11 |
| 權限控制器 | com.android.permissioncontroller |
APK | Android 10 |
| SDK 擴展 | com.android.sdkext |
APEX | Android 11 |
| Statsd | com.android.os.statsd |
APEX | Android 11 |
| 網絡共享 | com.android.tethering |
APK | Android 11 |
| 時區(qū)數(shù)據(jù) | com.android.tzdata |
APEX | Android 10 |
| Wi-Fi | com.android.wifi.apex |
APEX | Android 11 |