Оверлеи ресурсов времени выполнения (RRO) можно либо поместить в папку /vendor/overlays
(которая автоматически считывается во время загрузки), либо установить, запустив adb install
. Последнее позволяет ускорить итерацию. Однако это может привести к тому, что один и тот же RRO будет находиться в двух местах ( /vendor/overlays
и /data/app
).
Для отправки и перезагрузки выполните:
$ adb root $ adb remount $ adb shell mkdir /vendor/overlay/<overlay-name> $ adb push <path-to-overlay.apk-file> /vendor/overlay/<overlay-name> $ adb reboot
Для установки запустите:
$ adb install <path-to-overlay.apk-file>
Чтобы убедиться, что RRO доступен, запустите:
$ adb shell cmd overlay list --user current android [ ] com.android.sample_rro com.android.sample.targetapp [ ] com.android.sample.targetapp_rro
Когда рядом с недавно установленным RRO отображается ---
, это означает, что целевой APK либо не найден (дважды проверьте объявление targetPackage
в AndroidManifest.xml
), либо некоторые ресурсы, определенные в RRO, не соответствуют ни одному из них. ресурсы в цели.
Включение и отключение RRO
Чтобы включить или отключить RRO соответственно, выполните нужную команду:
Давать возможность:
adb shell cmd overlay enable --user current <rro-package-name>
Запрещать:
adb shell cmd overlay disable --user current <rro-package-name>