运行时资源叠加层 (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(请仔细检查 AndroidManifest.xml
上的 targetPackage
声明),或者 RRO 中定义的某些资源与目标中的任何资源都不匹配。
启用和停用 RRO
要分别启用或停用 RRO,请运行所需的命令
-
启用
adb shell cmd overlay enable --user current <rro-package-name>
-
停用
adb shell cmd overlay disable --user current <rro-package-name>