3
         try{
             Process process;
             process = Runtime.getRuntime().exec(command);
             BufferedReader in = new BufferedReader(new
                     InputStreamReader(process.getInputStream()));
         } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
         }
4

2 回答 2

5

这取决于您要运行的命令,您可能不需要任何命令。但是,如果您尝试运行系统级命令,则需要 root 访问权限(不是 Android 权限)。运行平台命令几乎可以绕过 Android 权限发生的任何事情,并且仅受您的 linux 用户 ID 是否对您发出的命令具有读/写/执行权限的影响。

Runtime.exec()SecurityException如果不允许您运行特定命令,也会抛出 a ,并且异常将提供有关特定情况下原因的更多详细信息,因此您可能也应该在try块中捕获它。您还Runtime.checkexec()可以在实际尝试之前验证您是否可以运行某个命令字符串。

希望有帮助!

于 2011-04-05T13:23:53.240 回答
0

我假设这里不需要任何权限。但是您可以分析执行结果以了解二进制文件是否被执行。

于 2011-04-05T13:16:33.570 回答