Android 10 或更高版本將一些 Android 系統組件模塊化,並使其能夠在正常的 Android 發布週期之外進行更新。最終用戶設備可以從 Google Play 商店基礎架構或通過合作夥伴提供的無線 (OTA) 機制接收對這些模塊化系統組件的更新。
關於模塊化系統組件
模塊化系統組件使 Google 和 Android 合作夥伴能夠以非侵入式的方式將更新廣泛、快速、無縫地分發到最終用戶設備。例如,媒體編解碼器碎片和嚴重錯誤的結合會顯著降低應用程序的採用率和用戶參與度。頻繁更新媒體相關模塊可以減少編解碼器碎片,使媒體應用程序在不同 Android 設備上的行為更加一致,並修復關鍵錯誤以建立用戶信任。
建築學
Android 10 或更高版本將選定的系統組件轉換為模塊,其中一些使用APEX 容器格式(在 Android 10 中引入),其中一些使用 APK 格式。模塊化架構使系統組件能夠根據需要通過關鍵錯誤修復和其他改進進行更新,而不會影響較低級別的供應商實施或較高級別的應用程序和服務。
圖 1.模塊化系統組件
模塊更新不會引入新的 API。它們只使用兼容性測試套件 (CTS)保證的 SDK 和系統 API,只相互通信,只使用穩定的 C API 或穩定的 AIDL 接口。
更新的模塊化系統組件可以打包在一起,並由 Google(使用 Google Play 商店基礎架構)或 Android 合作夥伴(使用合作夥伴提供的 OTA 機制)推送到最終用戶設備。模塊包以原子方式安裝(並回滾);要么更新所有需要更新的模塊,要么不更新任何模塊。
可用模塊
模塊名稱 | 包裹名字 | 類型 | 發布介紹 |
---|---|---|---|
廣告服務 | 多 | 多 | 安卓 13 |
亞行 | com.android.adbd | 頂尖 | 安卓 11 |
應用搜索 | com.android.appsearch | 頂尖 | 安卓 13 |
藝術 | com.android.art | 頂尖 | 安卓 12 |
藍牙 |
| 頂尖 | 安卓 13 |
小區廣播 | com.android.cellbroadcast | 頂尖 | 安卓 11 |
加密貨幣 | com.android.conscrypt | 頂尖 | 安卓 10 |
設備調度 | com.android.scheduling | 頂尖 | 安卓 12 |
DNS解析器 | com.android.resolv | 頂尖 | 安卓 10 |
文檔界面 | com.android.documentsui | APK | 安卓 10 |
外部服務 | com.android.ext.services | APK (安卓 10) 頂點(安卓 11) | 安卓 10 |
IPsec/IKEv2 庫 | com.android.ipsec | 頂尖 | 安卓 11 |
媒體 | 媒體: com.android.media 媒體編解碼器: com.android.media.swcodec | 頂尖 | Android 10(提取器、MediaSession API) Android 11(媒體解析器 API) |
媒體提供者 | com.android.mediaprovider | 頂尖 | 安卓 11 |
模塊元數據 | com.android.modulemetadata | APK | 安卓 10 |
網絡堆棧 | 網絡棧權限配置: com.android.networkstack.permissionconfig 強制門戶登錄: com.android.captiveportallogin 網絡組件: com.android.networkstack | APK | 安卓 10 |
NNAPI 運行時 | com.android.neuralnetworks | APK | 安卓 11 |
OnDevicePersonalization 運行時 | 多 | 多 | 安卓 13 |
權限控制器 | com.android.permissioncontroller | APK | 安卓 10 |
SDK 擴展 | com.android.sdkext | 頂尖 | 安卓 11 |
統計數據 | com.android.os.statsd | 頂尖 | 安卓 11 |
網絡共享 | com.android.tethering | APK | 安卓 11 |
時區數據 | com.android.tzdata | 頂尖 | 安卓 10 |
超寬帶 | com.android.uwb | 頂尖 | 安卓 13 |
無線上網 | com.android.wifi | 頂尖 | 安卓 11 |