UiAutomator uiautomator 报出 java.io.IOException: Permission denied 的错误,求教!!!

paulpeng · January 07, 2018 · Last by paulpeng replied at January 08, 2018 · 1779 hits

小弟在运营uiautomator脚本时,执行了一段adb shell am broadcast命令(要从手机执行一个文件操作的命令),但是系统老是提示错误:
Caused by: java.io.IOException: Permission denied

at java.lang.ProcessManager.exec(Native Method)

at java.lang.ProcessManager.exec(ProcessManager.java:209)

... 17 more

具体相关代码如下:
String temp= "adb shell am broadcast -a com.testtek.cmpp.action_test_record_file --es ext_test_record_file "+ mobPath + "zh05.wav";
Runtime.getRuntime().exec(temp);

如果在windows cmd中执行这个adb shell am broadcast 命令是正常的,但是一运行这段代码就提示第二行有错误。具体错误内容就如上所示,尝试了很多方法还是不行,求助各位大神帮忙,谢谢各位!

共收到 2 条回复 时间 点赞

首先你这段命令是在脚本中运行的吧,根本就不需要加adb shell前缀。然后如果你用的是u2,不允许直接runtime运行shell脚本的,可以使用UIDevice.executeShellCommand。

—— 来自TesterHome官方 安卓客户端

Crazyerick 回复

问题解决了,正如楼上所说,确实不用加上adb shell,直接运行后面的脚本命令即可,谢谢了!

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up