Apêndice A: trabalho com RROs

As sobreposições de recursos no ambiente de execução (RROs) podem ser enviadas ao /vendor/overlays. (que é lida automaticamente durante a inicialização) ou pode ser instalada executando adb install. O último método permite uma iteração mais rápida. No entanto, isso pode fazer com que a mesma RRO resida em duas partes 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 a instalação, execute:

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

Para confirmar se a 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 --- for exibido ao lado da RRO recém-instalada, isso indica que o O APK de destino não foi encontrado. Verifique a declaração targetPackage nos AndroidManifest.xml) ou alguns dos recursos definidos na RRO não correspondem a nenhum recursos no destino.

Ativar e desativar RROs

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

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

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