Cette page explique plusieurs tâches que vous devrez peut-être effectuer si vous configurez un build pour votre propre appareil.
Créer une configuration de flash personnalisée
Les instructions Fastboot sont définies dans un artefact appelé fastboot-info.txt
. Si vous créez plusieurs cibles, vous aurez plusieurs fichiers fastboot-info.txt
dans le $OUT_DIR. $ANDROID_PRODUCT_OUT
pointe vers la cible la plus récente que vous avez créée. Cette page liste les tâches à exécuter par fastboot et peut être régénérée à l'aide de m fastboot_info
. Vous pouvez implémenter une logique de clignotement personnalisée en modifiant le fichier fastboot-info.txt
.
Le fichier fastboot-info.txt
accepte les commandes suivantes:
flash %s
: flashe une partition donnée. Les arguments facultatifs incluent--slot-other,
filename_path, and
--apply-vbmeta.update-super
: met à jour la super partition.if-wipe
: exécute un autre composant de manière conditionnelle si un effacement est spécifié.erase %s
: efface une partition donnée (ne peut être utilisé qu'avecif-wipe
) -> par exemple,if-wipe erase cache
).
Déterminer l'état du verrouillage du flash
Si vous créez un daemon flashboot personnalisé (flashbootd) pour un appareil, vous devez pouvoir obtenir l'état du bootloader et du verrouillage du bootloader. @SystemApi
getFlashLockState()
transmet l'état du bootloader, et l'API système PersistentDataBlockManager.getFlashLockState()
renvoie l'état de verrouillage du bootloader sur les appareils conformes.
Valeur renvoyée | Problèmes de santé |
---|---|
FLASH_LOCK_UNKNOWN |
Ne renvoyé que par les appareils qui passent à Android 7.x ou version ultérieure et qui ne prenaient pas en charge auparavant les modifications du bootloader requises pour obtenir l'état du verrouillage du flash s'ils acceptaient la fonctionnalité de verrouillage/déverrouillage du flash.
|
FLASH_LOCK_LOCKED |
Retourné par tout appareil qui n'est pas compatible avec le verrouillage/déverrouillage clignotant (c'est-à-dire que l'appareil est toujours verrouillé) ou par tout appareil compatible avec le verrouillage/déverrouillage clignotant et qui est verrouillé. |
FLASH_LOCK_UNLOCKED |
Rendue par n'importe quel appareil compatible avec le verrouillage/déverrouillage clignotant et qui est déverrouillé. |
Les fabricants doivent tester les valeurs renvoyées par les appareils avec des bootloaders verrouillés et déverrouillés. Par exemple, AOSP contient une implémentation de référence qui renvoie une valeur en fonction de la propriété de démarrage ro.boot.flash.locked
. L'exemple de code se trouve dans les répertoires suivants:
frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java