【发布时间】:2020-09-07 10:24:41
【问题描述】:
我有以下问题。
我有一部已root的手机,我想更新一个应用程序的文件。当我通过 adb push 手动将文件 FILENAME 复制到手机,并获得 adb shell 和 root 凭据时,我可以毫无问题地将 $FILENAME 复制到 APP_DIR/$FILENAME。
但是,在adb push 之后,我尝试通过adb shell su -c 登录到shell,我给出了一条权限被拒绝的消息:S
我的工作示例:
adb push myfile /data/local/tmp/
adb shell
> su
> # cp /data/local/tmp/myfile /data/data/MYAPP/files/myfile
我的不工作示例:
adb push myfile /data/local/tmp/
adb shell su -c "cp /data/local/tmp/myfile /data/data/MYAPP/files/myfile"
/system/bin/sh: can't create /data/data/MYAPP/files/myfile: Permission denied
作为一个天真的其他解决方案,我尝试不使用复制命令并使用cat myfile > /data/data/MYAPP/files/myfile,但仍然有相同的消息:S
感谢您考虑我的要求
【问题讨论】:
-
adb shell su -c "id"提供了什么?老实说,这看起来不像是一个编程问题,而是su -c在您用于根设备的任何方法下如何工作的问题。您可能会从 Android 论坛获得更好的帮助。 -
嗨,它给了我这个:
uid=0 gid=0我也得到这个当做adb shell然后su和id