Приложение А, работа с ОПР

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