Оверлеи ресурсов времени выполнения (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>