Android 10 เปิดตัว Mainline (เดิมเรียกว่าคอมโพเนนต์ระบบแบบโมดูล ในเว็บไซต์นี้) Mainline แยกคอมโพเนนต์บางอย่างของระบบ Android ออกเป็นโมดูลและช่วยให้สามารถอัปเดตคอมโพเนนต์เหล่านั้นได้นอกรอบการเปิดตัว Android ปกติ ซึ่งช่วยให้ Google และพาร์ทเนอร์ Android สามารถเผยแพร่การอัปเดตในวงกว้าง ได้อย่างรวดเร็วและราบรื่นไปยังอุปกรณ์ของผู้ใช้ปลายทางโดยไม่รบกวน
อุปกรณ์ของผู้ใช้ปลายทางจะได้รับการอัปเดต Mainline จากฟีเจอร์อัปเดตระบบ Android Google Play (ซึ่งทำงานบนโครงสร้างพื้นฐานของ Google Play Store) หรือ ผ่านกลไกการอัปเดตแบบ Over-The-Air (OTA) ที่พาร์ทเนอร์จัดหาให้
สถาปัตยกรรม
Mainline จะแปลงคอมโพเนนต์ของระบบที่เลือกเป็นโมดูล สถาปัตยกรรมแบบโมดูล ที่แสดงในรูปที่ 1 ช่วยให้สามารถอัปเดตคอมโพเนนต์ของระบบด้วย การแก้ไขข้อบกพร่องที่สำคัญและการปรับปรุงอื่นๆ ได้ตามต้องการ โดยไม่ส่งผลกระทบต่อ การติดตั้งใช้งานของผู้ให้บริการระดับล่าง หรือแอปและบริการระดับสูง
รูปที่ 1 สถาปัตยกรรม Mainline
การอัปเดตโมดูลไม่ได้เป็นการเปิดตัว API ใหม่ โดยจะใช้เฉพาะ SDK และ System API ที่รับประกันโดยชุดทดสอบความเข้ากันได้ (CTS) สื่อสารกันเองเท่านั้น และใช้เฉพาะ C API หรืออินเทอร์เฟซ AIDL ที่เสถียร
การอัปเดตโมดูล
โมดูล Mainline บางโมดูลใช้รูปแบบคอนเทนเนอร์ APEX (เปิดตัวใน Android 10) และบางโมดูลใช้รูปแบบ APK
คุณสามารถจัดแพ็กเกจโมดูล Mainline ที่อัปเดตแล้วและพุชไปยังอุปกรณ์ของผู้ใช้ปลายทางได้ ไม่ว่าจะเป็น Google โดยใช้ฟีเจอร์การอัปเดตระบบ Google Play หรือพาร์ทเนอร์ Android โดยใช้กลไก OTA ที่พาร์ทเนอร์จัดหาให้ แพ็กเกจโมดูลจะติดตั้งและย้อนกลับแบบอะตอมมิก ไม่ว่าโมดูลทั้งหมดที่ต้องอัปเดตจะได้รับการอัปเดตหรือไม่ก็ตาม
โมดูลที่ใช้ได้
| ชื่อโมดูล | ชื่อแพ็กเกจ | ประเภท | เปิดตัวรุ่น |
|---|---|---|---|
| AdServices | com.google.android.adservices |
APEX | Android 13 |
| adbd | com.android.adbd |
APEX | Android 11 |
| Android Health | com.google.android.healthfitness |
APEX | Android 14 |
| AppSearch | com.android.appsearch |
APEX | Android 13 |
| ART | com.android.art |
APEX | Android 12 |
| บลูทูธ | com.google.android.btservices |
APEX | Android 13 |
| การออกอากาศทางโทรศัพท์มือถือ | com.android.cellbroadcast |
APEX | Android 11 |
| กำหนดค่าโครงสร้างพื้นฐาน | com.android.configinfrastructure |
APEX | Android 14 |
| 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 Library | com.android.ipsec |
APEX | Android 11 |
| สื่อ | สื่อ: com.android.mediaตัวแปลงรหัสสื่อ: com.android.media.swcodec |
APEX | Android 10 (ตัวแยก, MediaSession API)
Android 11 (MediaParser API) |
| MediaProvider | com.android.mediaprovider |
APEX | Android 11 |
| ModuleMetadata | com.android.modulemetadata |
APK | Android 10 |
| Network Stack | การกำหนดค่าสิทธิ์สแต็กเครือข่าย: com.android.networkstack.permissionconfigCaptive Portal Login: com.android.captiveportalloginNetwork Components: com.android.networkstack |
APK | Android 10 |
| NNAPI รันไทม์ | com.android.neuralnetworks |
APK | Android 11 |
| OnDevicePersonalization Runtime |
ฟังก์ชันการทำงานหลักของแพ็กเกจ: com.google.android.ondevicepersonalization (APEX)ฟังก์ชันการทำงานของ OnDevicePersonalization API: com.google.android.ondevicepersonalization (APK)ฟังก์ชันการทำงานของ FederatedCompute API: com.google.android.federatedcompute (APK)
|
APEX และ APK | Android 13 |
| PermissionController | com.android.permissioncontroller |
APK | Android 10 |
| การจัดสรรคีย์จากระยะไกล | com.android.rkpd |
APEX | Android 14 |
| SDK ส่วนขยาย | com.android.sdkext |
APEX | Android 11 |
| Statsd | com.android.os.statsd |
APEX | Android 11 |
| การเชื่อมต่ออินเทอร์เน็ตผ่านมือถือ | com.android.tethering |
APEX | Android 11 |
| เขตเวลา | com.android.tzdata |
APEX | Android 10 |
| UWB | com.android.uwb |
APEX | Android 13 |
| Wi-Fi | com.android.wifi |
APEX | Android 11 |