การนำไปปฏิบัติ
อุปกรณ์ที่ใช้ Android ที่ใช้ Android 9 และต่ำกว่าที่มีพาร์ติชัน A/B สามารถใช้พาร์ติ system_other
ที่ไม่ได้ใช้งาน (เช่น system_b
เมื่อ slot_a
ทำงานอยู่) เพื่อจัดเก็บไฟล์ VDEX/ODEX ที่ปรับให้เหมาะสมล่วงหน้า เมื่อใช้ system_other
ro.cp_system_other_odex
จะถูกตั้งค่าเป็น 1 เพื่อให้บริการตัวจัดการแพ็คเกจตั้ง sys.cppreopt=requested
เพื่อให้ cppreopts.rc
ดำเนินการ
ใน Android 10 มีการแนะนำlibfs_avb
เพื่อรองรับการตรวจสอบ AVB แบบสแตนด์อโลนสำหรับพาร์ติชัน system_other
โครงสร้าง VBMeta ของพาร์ติชันดังกล่าวจะถูกต่อท้ายพาร์ติชัน เพื่อตรวจสอบโดยคีย์สาธารณะที่คาดหวังจากระบบไฟล์ ระบบ Android build รองรับการลงนาม system_other.img
ในขณะที่รวมคีย์การลงนามที่เกี่ยวข้องภายใต้ /product/etc/security/avb/system_other.avbpubkey
เครื่องมือรีลีส sign_target_files_apks.py
ยังรองรับการแทนที่คีย์การเซ็นชื่อเป็นเวอร์ชันรีลีสอีกด้วย
อุปกรณ์ A/B ที่เปิดตัวก่อน Android 10 จะมีพาร์ติชัน system_other
ทางกายภาพ แม้ว่าจะอัปเกรดเป็น Android 10 โดยตั้งค่า PRODUCT_RETROFIT_DYNAMIC_PARTITIONS
เป็น true
ก็ตาม
อุปกรณ์ A/B ที่เปิดตัวด้วย Android 10 ต้องมีพาร์ติชัน system_other
แบบลอจิคัล ตัวอย่างต่อไปนี้แสดงไฟล์ fstab.postinstall
ทั่วไปที่เปิดใช้งาน AVB บน system_other
#<dev> <mnt_point> <type> <mnt_flags options> <fs_mgr_flags> system /postinstall ext4 ro,nosuid,nodev,noexec slotselect_other,logical,avb_keys=/product/etc/security/avb/system_other.avbpubkey
อุปกรณ์ที่ต้องเปิดใช้งาน AVB บนพาร์ติ system_other
ควรวางไฟล์ fstab
ไว้ในพาร์ติชันผลิตภัณฑ์และตั้งค่าคุณสมบัติ ro.postinstall.fstab.prefix
เป็น /product
# Use /product/etc/fstab.postinstall to mount system_other. PRODUCT_PRODUCT_PROPERTIES += \ ro.postinstall.fstab.prefix=/product PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/fstab.postinstall:$(TARGET_COPY_OUT_PRODUCT)/etc/fstab.postinstall