Android 10 ได้เปิดตัว Mainline (ก่อนหน้านี้เรียกว่าคอมโพเนนต์ของระบบแบบโมดูลในเว็บไซต์นี้) Mainline จะแยกคอมโพเนนต์ระบบ Android บางรายการออกเป็นโมดูลและทำให้อัปเดตได้นอกรอบการเผยแพร่ปกติของ Android ซึ่งช่วยให้ Google และพาร์ทเนอร์ Android สามารถเผยแพร่การอัปเดตในวงกว้างได้อย่างรวดเร็วและราบรื่นไปยังอุปกรณ์ของผู้ใช้ปลายทางโดยไม่รบกวน
อุปกรณ์ของผู้ใช้ปลายทางจะรับการอัปเดต Mainline ได้จากฟีเจอร์การอัปเดตระบบ Android Google Play (ซึ่งทำงานบนโครงสร้างพื้นฐานของ Google Play Store) หรือผ่านกลไกการอัปเดตผ่านอากาศ (OTA) ที่ได้จากพาร์ทเนอร์
สถาปัตยกรรม
Mainline จะแปลงคอมโพเนนต์ของระบบที่เลือกเป็นโมดูล สถาปัตยกรรมแบบโมดูลที่แสดงในรูปที่ 1 ช่วยให้สามารถอัปเดตคอมโพเนนต์ของระบบด้วยการแก้ไขข้อบกพร่องที่สำคัญและการปรับปรุงอื่นๆ ตามที่จำเป็นได้โดยไม่ส่งผลกระทบต่อการใช้งานของผู้ให้บริการในระดับล่างหรือแอปและบริการในระดับที่สูงขึ้น
รูปที่ 1 สถาปัตยกรรมหลัก
การอัปเดตโมดูลจะไม่เปิดตัว API ใหม่ โดยจะใช้เฉพาะ SDK และ System API ที่ชุดทดสอบความเข้ากันได้ (CTS) รับรอง สื่อสารกันเองเท่านั้น และใช้เฉพาะ C API หรืออินเทอร์เฟซ AIDL ที่เสถียร
การอัปเดตโมดูล
โมดูลหลักบางรายการใช้รูปแบบคอนเทนเนอร์ 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 |
CellBroadcast | 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 | com.android.ipsec |
APEX | Android 11 |
สื่อ | สื่อ: com.android.media ตัวแปลงรหัสสื่อ: com.android.media.swcodec |
APEX | Android 10 (Extractor, MediaSession API)
Android 11 (MediaParser API) |
MediaProvider | com.android.mediaprovider |
APEX | Android 11 |
ModuleMetadata | com.android.modulemetadata |
APK | Android 10 |
สแต็กเครือข่าย | การกำหนดค่าสิทธิ์สแต็กเครือข่าย: com.android.networkstack.permissionconfig Captive การเข้าสู่ระบบพอร์ทัล: com.android.captiveportallogin คอมโพเนนต์เครือข่าย: com.android.networkstack |
APK | Android 10 |
NNAPI รันไทม์ | com.android.neuralnetworks |
APK | Android 11 |
OnDevicePersonalization รันไทม์ |
ฟังก์ชันหลักของแพ็กเกจ: 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 |