Apêndice A, Trabalhando com RROs

Runtime Resource Overlays (RROs) podem ser enviados para a pasta /vendor/overlays (que é lido automaticamente durante a inicialização) ou podem ser instalados executando `adb install`. O último permite uma iteração mais rápida. No entanto, isso pode fazer com que o mesmo RRO resida em dois locais ( /vendor/overlays e /data/app ).

Para enviar e reiniciar, execute:

$ adb root
$ adb remount
$ adb shell mkdir /vendor/overlay/<overlay-name>
$ adb push <path-to-overlay.apk-file> /vendor/overlay/<overlay-name>
$ adb reboot

Para instalação, execute:

$ adb install <path-to-overlay.apk-file>

Para confirmar que o RRO está disponível, execute:

$ adb shell cmd overlay list --user current
    android
    [ ] com.android.sample_rro
    com.android.sample.targetapp
    [ ] com.android.sample.targetapp_rro

Quando --- é exibido ao lado do RRO recém-instalado, isso indica que o APK de destino não foi encontrado (verifique novamente a declaração targetPackage em seu AndroidManifest.xml ) ou alguns dos recursos definidos no RRO não correspondem a nenhum recursos no destino.

Habilitando e desabilitando RROs

Para habilitar ou desabilitar um RRO, respectivamente, execute o comando desejado:

  • Permitir:
    adb shell cmd overlay enable --user current <rro-package-name>

  • Desativar:
    adb shell cmd overlay disable --user current <rro-package-name>