Nakładki zasobów w czasie wykonywania (RRO) można przesłać do folderu /vendor/overlays
(który jest automatycznie odczytywany podczas uruchamiania) lub zainstalować, uruchamiając adb install
.
Ta druga umożliwia szybsze iteracje. Może to jednak spowodować, że ten sam RRO będzie znajdować się w 2 miejscach (/vendor/overlays
i /data/app
).
Aby przesłać i zrestartować urządzenie, uruchom:
$ adb root $ adb remount $ adb shell mkdir /vendor/overlay/<overlay-name> $ adb push <path-to-overlay.apk-file> /vendor/overlay/<overlay-name> $ adb reboot
Aby zainstalować:
$ adb install <path-to-overlay.apk-file>
Aby sprawdzić, czy RRO jest dostępny, uruchom polecenie:
$ adb shell cmd overlay list --user current android [ ] com.android.sample_rro com.android.sample.targetapp [ ] com.android.sample.targetapp_rro
Jeśli ---
jest wyświetlane obok nowo zainstalowanego RRO, oznacza to, że plik APK docelowy nie został znaleziony (dwukrotnie sprawdź deklarację targetPackage
w AndroidManifest.xml
) lub niektóre zasoby zdefiniowane w RRO nie pasują do żadnych zasobów w docelowym pliku APK.
Włączanie i wyłączanie RRO
Aby włączyć lub wyłączyć RRO, uruchom odpowiednie polecenie:
-
Włącz:
adb shell cmd overlay enable --user current <rro-package-name>
-
Wyłącz:
adb shell cmd overlay disable --user current <rro-package-name>