Android studio - 如何从java方法直接使用终端?

时间:2017-04-20 12:01:24

标签: java android bash sh

我是Android开发的新手,我尝试使用java方法访问Android手机的内部终端(/ bin / bash,...)。

你知道这种java方法是否存在吗?

由于

2 个答案:

答案 0 :(得分:2)

您可以使用RuntimeProcess来完成任务。

private static String executeCommand(String command) {
    Process process = null;
    BufferedReader reader = null;
    String result = "";
    try {
        String line;
        process = Runtime.getRuntime().exec(command);
        reader = new BufferedReader(new InputStreamReader(process.getInputStream()));

        while ((line = reader.readLine()) != null)
            result += line + "\n";
    } catch (final Exception e) {
        e.printStackTrace();
    } finally {
        try {
            if (reader != null)
                reader.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            if (process != null)
                process.destroy();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    return result;
}

其中命令是任何可用的终端命令,如PING 8.8.8.8

答案 1 :(得分:1)

我不完全确定“访问内部终端”是什么意思。但是如果您想执行命令,请查看 Runtime 类的documentation

Here's关于如何使用它的示例。