Auf dieser Seite werden verschiedene Aufgaben erläutert, die Sie ausführen müssen, wenn Sie einen Build für Ihr eigenes Gerät einrichten.
Benutzerdefinierte Flash-Konfiguration erstellen
Die Fastboot-Anleitungen sind in einem Artefakt namens fastboot-info.txt
definiert. Wenn Sie mehrere Ziele erstellen, befinden sich im $OUT_DIR mehrere fastboot-info.txt
-Dateien. $ANDROID_PRODUCT_OUT
verweist auf das aktuellste Ziel, das Sie erstellt haben. Auf dieser Seite sind die Aufgaben aufgeführt, die von fastboot ausgeführt werden sollen. Sie kann mit m fastboot_info
neu generiert werden. Sie können eine benutzerdefinierte Blinklogik einführen, indem Sie die Datei fastboot-info.txt
ändern.
Die fastboot-info.txt
-Datei unterstützt die folgenden Befehle:
flash %s
: Eine bestimmte Partition wird geflasht. Optionale Argumente sind--slot-other,
filename_path, and
--apply-vbmeta.update-super
: Aktualisiert die Superpartition.if-wipe
: Eine andere Komponente wird bedingt ausgeführt, wenn ein Löschen angegeben wird.erase %s
: Löscht eine bestimmte Partition. Kann nur in Verbindung mitif-wipe
verwendet werden, z. B.if-wipe erase cache
).
Status der Blitzsperre ermitteln
Wenn Sie einen benutzerdefinierten Flashboot-Daemon (flashbootd) für ein Gerät erstellen, müssen Sie den Status des Bootloaders und des Bootloader-Sperrbildschirms abrufen können. Der getFlashLockState()
@SystemApi
überträgt den Bootloaderstatus und die PersistentDataBlockManager.getFlashLockState()
-System-API gibt den Sperrstatus des Bootloaders auf konformen Geräten zurück.
Rückgabewert | Krankheiten |
---|---|
FLASH_LOCK_UNKNOWN |
Wird nur von Geräten zurückgegeben, die auf Android 7.x oder höher umgestellt wurden und zuvor die Bootloader-Änderungen nicht unterstützt haben, die erforderlich sind, um den Status der Flash-Sperre abzurufen, wenn sie die Funktion zum Sperren/Entsperren des Flash-Speichers unterstützt haben.
|
FLASH_LOCK_LOCKED |
Geräte, die nicht durch Blinken gesperrt/entriegelt werden können (d. h. das Gerät ist immer gesperrt) oder Geräte, die das Blinken zum Sperren/Entriegeln unterstützen und gesperrt sind. |
FLASH_LOCK_UNLOCKED |
Wird von allen Geräten zurückgegeben, die das Blinken zur Sperr-/Entsperrung unterstützen und entsperrt sind. |
Hersteller sollten die von Geräten mit gesperrtem und entsperrtem Bootloader zurückgegebenen Werte testen. AOSP enthält beispielsweise eine Referenzimplementierung, die einen Wert basierend auf der Boot-Property ro.boot.flash.locked
zurückgibt. Der Beispielcode befindet sich in den folgenden Verzeichnissen:
frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java