Android Mainline基礎(chǔ)簡(jiǎn)介
關(guān)鍵要點(diǎn)
- Android Mainline 是通過(guò)模塊化更新 Android 核心組件的框架,可能提高安全性。
- 允許通過(guò) Google Play 系統(tǒng)更新分發(fā)模塊,無(wú)需完整固件更新。
- 能簡(jiǎn)化廠商工作并減少碎片化,但覆蓋范圍有限。
什么是 Android Mainline?
Android Mainline 是 Google 在 Android 9(Pie)及以上版本中引入的一個(gè)框架,通過(guò)將 Android 系統(tǒng)的關(guān)鍵組件模塊化,允許這些組件以獨(dú)立模塊(稱為 Mainline 模塊 或 APEX/ART 模塊)的形式通過(guò) Google Play 系統(tǒng)更新(Google Play System Updates)進(jìn)行分發(fā)和更新,而無(wú)需完整的系統(tǒng)固件更新(OTA)。
- 引入時(shí)間:Android 9(2019)首次引入,Android 10(2019)正式擴(kuò)展,Android 12(2021)及以后進(jìn)一步完善。
其核心目標(biāo)包括:
- 快速更新:讓核心系統(tǒng)組件(如安全補(bǔ)丁、系統(tǒng)服務(wù))能夠快速推送,繞過(guò)設(shè)備制造商的漫長(zhǎng)固件更新流程。
- 一致性:確保不同廠商的 Android 設(shè)備運(yùn)行相同版本的核心組件,減少 Android 生態(tài)系統(tǒng)的碎片化問(wèn)題。
- 安全性:通過(guò)及時(shí)更新關(guān)鍵組件,修復(fù)安全漏洞,保護(hù)用戶數(shù)據(jù)。
- 簡(jiǎn)化廠商工作:降低設(shè)備制造商適配新 Android 版本的工作量,減輕開(kāi)發(fā)負(fù)擔(dān)。
Android Mainline 的工作原理
Android Mainline 的核心是通過(guò)將系統(tǒng)組件從傳統(tǒng)的 Android 系統(tǒng)鏡像(system.img)中剝離,封裝為獨(dú)立的可更新模塊。這些模塊可以通過(guò) Google Play 商店或類似機(jī)制進(jìn)行更新,主要機(jī)制包括以下幾個(gè)方面:
(1) Mainline 模塊類型
Mainline 模塊分為兩類:
| 類型 | 描述 | 存儲(chǔ)位置 | 示例用途 |
|---|---|---|---|
| APEX 模塊 | 封裝原生代碼、Java 代碼、配置文件等的可更新容器 | /apex 分區(qū),運(yùn)行時(shí)掛載為獨(dú)立文件系統(tǒng) | 媒體編解碼器、Wi-Fi 堆棧 |
| APK 模塊 | 以傳統(tǒng) APK 形式分發(fā)的模塊,通常包含 Java 代碼 | /system 或 /data 分區(qū) | 權(quán)限控制器 |
APEX(Android Pony EXpress)模塊:
- 是一種安全的模塊化容器,支持動(dòng)態(tài)加載和更新,通常用于需要底層權(quán)限的核心組件,例如媒體編解碼器、Wi-Fi 堆棧。
- 存儲(chǔ)在
/apex分區(qū),運(yùn)行時(shí)掛載為只讀文件系統(tǒng),確保系統(tǒng)穩(wěn)定性和安全性。
APK 模塊:
- 以傳統(tǒng) APK 形式分發(fā)的模塊,通常包含 Java 代碼,適用于不需要底層權(quán)限的組件,例如權(quán)限控制器。
- 存儲(chǔ)在
/system或/data分區(qū),更新方式類似于普通應(yīng)用。
(2) Google Play 系統(tǒng)更新
- Mainline 模塊通過(guò) Google Play 系統(tǒng)更新(Google Play System Updates)分發(fā),類似于應(yīng)用更新。
- 用戶可以在設(shè)備設(shè)置中查看和安裝這些更新(通常在“設(shè)置 > 安全 > Google Play 系統(tǒng)更新”)。
更新由 Google 直接推送,無(wú)需設(shè)備制造商介入,簡(jiǎn)化了更新流程。更新可能需要設(shè)備重啟以應(yīng)用(例如通過(guò) A/B 分區(qū)機(jī)制減少中斷),確保無(wú)縫體驗(yàn)。
(3) 模塊化組件
截至 Android 15(2025),以下是一些常見(jiàn)的 Mainline 模塊,部分模塊因版本和設(shè)備而異:
| 類別 | 模塊示例 | 功能描述 |
|---|---|---|
| 核心系統(tǒng)服務(wù) | 權(quán)限控制器(Permission Controller) | 管理應(yīng)用權(quán)限 |
| 系統(tǒng) UI(System UI) | 部分界面元素 | |
| 模塊化系統(tǒng)組件(Module Metadata) | 管理其他模塊的元數(shù)據(jù) | |
| 媒體和連接 | 媒體編解碼器(Media Codecs) | 音頻/視頻解碼 |
| Wi-Fi 堆棧 | Wi-Fi 連接管理 | |
| 藍(lán)牙堆棧 | 藍(lán)牙協(xié)議和功能 | |
| 安全相關(guān) | Conscrypt | 加密庫(kù) |
| DNS Resolver | 域名解析 | |
| 運(yùn)行時(shí)和框架 | ART(Android Runtime) | 優(yōu)化應(yīng)用運(yùn)行性能 |
| Runtime 模塊 | 核心 Java 庫(kù) | |
| 其他 | Neural Networks API(NNAPI) | 機(jī)器學(xué)習(xí)支持 |
| Captive Portal Login | 公共 Wi-Fi 登錄頁(yè)面 |
這些模塊的版本與 Android 版本解耦,允許在舊 Android 版本上運(yùn)行新模塊,增強(qiáng)向下兼容性。
官網(wǎng)各個(gè)模塊詳細(xì)信息https://source.android.google.cn/docs/core/ota/modular-system?hl=zh-cn
到此這篇關(guān)于Android Mainline簡(jiǎn)介的文章就介紹到這了,更多相關(guān)Android Mainline簡(jiǎn)介內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android繼承ViewGroup實(shí)現(xiàn)Scroll滑動(dòng)效果的方法示例
這篇文章主要介紹了Android繼承ViewGroup實(shí)現(xiàn)Scroll滑動(dòng)效果的方法,結(jié)合實(shí)例形式分析了Android滑動(dòng)效果的原理及擴(kuò)展ViewGroup實(shí)現(xiàn)滑動(dòng)功能的相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
android中知道圖片name時(shí)獲取圖片的簡(jiǎn)單方法
android中知道圖片name時(shí)獲取圖片的簡(jiǎn)單方法,需要的朋友可以參考一下2013-05-05
Android仿美團(tuán)淘寶實(shí)現(xiàn)多級(jí)下拉列表菜單功能
這篇文章主要介紹了Android仿美團(tuán)淘寶實(shí)現(xiàn)多級(jí)下拉列表菜單功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2017-01-01
Android內(nèi)存優(yōu)化操作方法梳理總結(jié)
這篇文章主要介紹了Android 內(nèi)存優(yōu)化知識(shí)點(diǎn)梳理總結(jié),Android 操作系統(tǒng)給每個(gè)進(jìn)程都會(huì)分配指定額度的內(nèi)存空間,App 使用內(nèi)存來(lái)進(jìn)行快速的文件訪問(wèn)交互,長(zhǎng)時(shí)間如此便需要優(yōu)化策略,文章分享優(yōu)化知識(shí)點(diǎn)總結(jié),需要的朋友可以參考一下2022-11-11
Android?Framework如何實(shí)現(xiàn)Binder
這篇文章主要介紹了Android?Framework如何實(shí)現(xiàn)Binder,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
Android實(shí)現(xiàn)QQ手機(jī)管家懸浮小火箭效果
這篇文章主要介紹了Android實(shí)現(xiàn)QQ手機(jī)管家懸浮小火箭效果,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
Android中使用listview實(shí)現(xiàn)qq/微信好友列表
本文主要介紹了android中使用listview實(shí)現(xiàn)qq/微信好友列表(頭像,昵稱,個(gè)性簽名)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-04-04
解決Android ListView數(shù)據(jù)為空及加載錯(cuò)誤的方法
這篇文章主要為大家提供了一個(gè)解決Android ListView數(shù)據(jù)為空及加載錯(cuò)誤的方法,感興趣的小伙伴們可以參考一下2016-02-02

