【发布时间】:2020-11-20 21:17:42
【问题描述】:
目前我正在通过 Android Studio 开发一个应用程序,该应用程序使用下一个 sintaxis 执行命令:
Process p = Runtime.getRuntime().exec(new String[] { "su", "-c", "ip link show"});
我正在使用设备 IMX7D_PICO(它使用 Android Things 作为 SO)。已root,如下图所示:
但是,当我在 Android Studio 上以 root 身份运行命令时,出现下一个错误:
W/System.err: java.io.IOException: Cannot run program "su": error=13, Permission denied
W/System.err: at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:692)
at java.lang.Runtime.exec(Runtime.java:560)
我不知道为什么 su 只适用于 adb。另一方面,我知道还有其他方法可以获取 ip link show 的数据,但下一步是使用我说的命令打开一个套接字 RAW。所以,我需要通过 Android Studio 以 su 身份运行进程。
【问题讨论】:
标签: android adb root android-things