无论我在“adb shell”之后输入什么,它都会失败并显示Permission denied
:
D:\android-sdk-windows\platform-tools>adb shell find /data -name *.db
find: permission denied
D:\android-sdk-windows\platform-tools>adb shell test
test: permission denied
D:\android-sdk-windows\platform-tools>adb remount
remount failed: No such file or directory
有什么想法吗?
答案 0 :(得分:100)
根据adb help
:
adb root - restarts the adbd daemon with root permissions
这确实为我解决了这个问题。
答案 1 :(得分:21)
无需rooting :如果您无法将手机设为root用户,请使用run-as <package>
命令访问应用程序的数据。
示例:
$ adb exec-out run-as com.yourcompany.app ls -R /data/data/com.yourcompany.app/
exec-out
执行命令而不启动shell并修改输出。
答案 2 :(得分:17)
“拒绝权限”的原因是因为您的Android计算机尚未正确生根。开始$
后,您看到adb shell
了吗?如果您正确使用了计算机,则会看到#
。
如果您看到$
,请尝试输入su
进入超级用户模式。如果Root已启用,您将看到#
- 无需输入密码。
答案 3 :(得分:5)
您可能需要从开发者设置菜单中激活adb root。
如果您从cmd行运行adb root
,则可以获得:
root access is disabled by system setting - enable in settings -> development options
激活root选项(仅限ADB或Apps和ADB)后,adb将重新启动,您将能够使用cmd行中的root。
答案 4 :(得分:0)
小心斜杠,将“\”更改为“/”,如下所示: adb.exe push SuperSU-v2.79-20161205182033.apk / storage
答案 5 :(得分:0)
data
分区非root用户不可访问,如果要访问它,则必须为手机root。
adb root
不适用于所有产品,并且取决于手机的型号。
在android studio上的新版本中,您可以探索可调试应用程序的/data/data
路径。
答案 6 :(得分:0)
以前的解决方案都不适合我,但我能够使用此命令使其工作
adb shell "run-as com.yourcompany.app cat /data/data/com.yourcompany.app/shared_prefs/SHARED_PREF_PROTECTED.xml" > SHARED_PREF_PROTECTED.xml
答案 7 :(得分:-3)
adb remount。然后尝试adb shell
答案 8 :(得分:-3)
我的解决方案是(thx to David Ljung Madison post)
adb kill-server
答案 9 :(得分:-4)
以管理员身份运行cmd
这将解决我的问题。
谢谢。