Na tej stronie znajdziesz opisy kilku zadań, które możesz musieć wykonać, jeśli konfigurujesz wersję na własne urządzenie.
Tworzenie niestandardowej konfiguracji flash
Instrukcje dotyczące szybkiego uruchamiania są zdefiniowane w artefakcie o nazwie fastboot-info.txt
. Jeśli tworzysz wiele obiektów docelowych, w folderze $OUT_DIR znajdziesz wiele plików fastboot-info.txt
. $ANDROID_PRODUCT_OUT
wskazuje najnowszy utworzony przez Ciebie cel. Ta strona zawiera listę zadań do wykonania przez fastboot i może zostać wygenerowana ponownie za pomocą m fastboot_info
. Możesz wprowadzić niestandardową logikę migania, modyfikując plik fastboot-info.txt
.
Plik fastboot-info.txt
obsługuje te polecenia:
flash %s
: flashowanie określonego partycjonowania. Opcjonalne argumenty to:--slot-other,
filename_path, and
--apply-vbmeta`.update-super
: aktualizuje super partycję.if-wipe
: warunkowo uruchamia inny komponent, jeśli jest określony wipe.erase %s
: kasuje dany podział (może być używany tylko w połączeniu zif-wipe
-> np.if-wipe erase cache
).
Określanie stanu blokady lampy błyskowej
Jeśli tworzysz niestandardowy demon flashboot (flashbootd) na potrzeby urządzenia, musisz mieć możliwość uzyskania stanu programu rozruchowego i stanu blokady programu rozruchowego. getFlashLockState()
@SystemApi
przesyła stan programu rozruchowego, a PersistentDataBlockManager.getFlashLockState()
system API zwraca stan blokady programu rozruchowego na zgodnych urządzeniach.
Zwracana wartość | Schorzenia |
---|---|
FLASH_LOCK_UNKNOWN |
Zwracane tylko przez urządzenia, które są aktualizowane do Androida 7.x lub nowszego i nie obsługują zmian bootloadera wymaganych do zablokowania flasha, jeśli obsługują funkcję blokowania/odblokowywania flasha.
|
FLASH_LOCK_LOCKED |
Zwracane przez dowolne urządzenie, które nie obsługuje migania blokady/odblokowania (czyli urządzenie jest zawsze zablokowane), lub dowolne urządzenie, które obsługuje miganie blokady/odblokowania i jest w stanie zablokowanym. |
FLASH_LOCK_UNLOCKED |
Zwracane przez każde urządzenie, które obsługuje miganie podczas blokowania i odblokowywania i jest w stanie odblokowanym. |
Producenci powinni przetestować wartości zwracane przez urządzenia z zablokowanym i odblokowanym bootloaderem. Na przykład AOSP zawiera implementację referencyjną, która zwraca wartość na podstawie właściwości ro.boot.flash.locked
boot. Przykładowy kod znajduje się w tych katalogach:
frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java