หน้านี้จะอธิบายงานหลายอย่างที่อาจต้องทำหากคุณกำลังสร้างบิลด์สำหรับอุปกรณ์ของคุณเอง
สร้างการกำหนดค่า Flash ที่กำหนดเอง
วิธีการบูตด่วนจะกำหนดไว้ในอาร์ติแฟกต์ที่เรียกว่า fastboot-info.txt
หากสร้างเป้าหมายหลายรายการ คุณจะมีไฟล์ fastboot-info.txt
หลายไฟล์ใน $OUT_DIR และ $ANDROID_PRODUCT_OUT
จะชี้ไปยังเป้าหมายล่าสุดที่คุณสร้าง หน้านี้จะแสดงรายการงานที่ Fastboot จะทำ และสามารถสร้างใหม่ได้โดยใช้ m fastboot_info
คุณสามารถนําตรรกะการกะพริบที่กำหนดเองมาใช้ได้โดยแก้ไขไฟล์ fastboot-info.txt
ไฟล์ fastboot-info.txt
รองรับคำสั่งต่อไปนี้
flash %s
: แฟลชพาร์ติชันที่ระบุ อาร์กิวเมนต์ที่ไม่บังคับ ได้แก่--slot-other,
filename_path, and
--apply-vbmeta`update-super
: อัปเดตพาร์ติชันระดับบนสุดif-wipe
: เรียกใช้คอมโพเนนต์อื่นๆ ตามเงื่อนไขหากมีการระบุการลบerase %s
: ลบพาร์ติชันที่ระบุ (ใช้ได้เฉพาะร่วมกับif-wipe
-> เช่นif-wipe erase cache
)
ระบุสถานะการล็อกแฟลช
หากกำลังสร้างเดรัมน์แฟลชบูตที่กำหนดเอง (flashbootd) สำหรับอุปกรณ์ คุณจะต้องรับสถานะ Bootloader และสถานะการล็อก Bootloader ได้ getFlashLockState()
@SystemApi
จะส่งสถานะ Bootloader และ PersistentDataBlockManager.getFlashLockState()
System API จะแสดงสถานะการล็อกของ Bootloader ในอุปกรณ์ที่เป็นไปตามข้อกำหนด
ผลลัพธ์ | ภาวะทางการแพทย์ |
---|---|
FLASH_LOCK_UNKNOWN |
แสดงเฉพาะในอุปกรณ์ที่อัปเกรดเป็น Android 7.x ขึ้นไปซึ่งก่อนหน้านี้ไม่รองรับการเปลี่ยนแปลง bootloader ที่จำเป็นในการรับสถานะการล็อกแฟลช หากรองรับความสามารถในการล็อก/ปลดล็อกด้วยการแฟลช
|
FLASH_LOCK_LOCKED |
แสดงผลโดยอุปกรณ์ที่ไม่รองรับการกะพริบเพื่อล็อก/ปลดล็อก (กล่าวคือ อุปกรณ์ล็อกอยู่เสมอ) หรืออุปกรณ์ที่รองรับการกะพริบเพื่อล็อก/ปลดล็อกและอยู่ในสถานะล็อก |
FLASH_LOCK_UNLOCKED |
แสดงผลโดยอุปกรณ์ที่รองรับการกะพริบเพื่อล็อก/ปลดล็อกและอยู่ในสถานะปลดล็อก |
ผู้ผลิตควรทดสอบค่าที่อุปกรณ์แสดงผลด้วย Bootloader ที่ล็อกและปลดล็อก ตัวอย่างเช่น AOSP มีการใช้งานอ้างอิงที่แสดงผลค่าตามพร็อพเพอร์ตี้การบูต ro.boot.flash.locked
โค้ดตัวอย่างอยู่ในไดเรกทอรีต่อไปนี้
frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java