Apêndice A, trabalhar com RROs

As sobreposições de recursos de tempo de execução (RROs) podem ser enviadas para a pasta /vendor/overlays (que é lida automaticamente durante a inicialização) ou podem ser instaladas executando adb install . Este ú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 reinicializar, 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 se 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 próximo ao 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.

Habilitar e desabilitar RROs

Para ativar ou desativar um RRO, respectivamente, execute o comando desejado:

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

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