有没有办法编写一个脚本,使用run-as从ADB shell复制文件?
我知道在adb shell中复制的唯一方法就是使用cat source > dest(编辑:现代android版本有cp命令,这使得这个问题变得不必要了),但是我只能引用一个深层的大于号 - 所以我的脚本可以将它传递给adb shell,但不能传递给adb shell run-as.
例如,这有效:
adb shell "cat source > dest"
但这不是:
adb shell run-as "cat source > dest"
这不是:
adb shell "run-as cat source \> dest"
我甚至尝试创建一个小脚本并将其上传到设备,但我似乎无法从adb shell运行脚本 - 它告诉我"权限被拒绝".我也不能chmod脚本.
我想这样做的原因是将文件复制到应用程序的私有存储区域 - 具体来说,我使用脚本来修改共享首选项并将修改后的首选项放回原处.但是,只有应用程序本身或root可以写入我想要的文件.
此方案中的用例是将文件复制到设备上的受保护位置,而不是检索它; 对于检索,这个问题已经有了很好的答案.