Как написать коментарий adb shell в java.lang.Runtime.getRuntime ()? - PullRequest
2 голосов
/ 16 октября 2011

Мне нужно использовать adb connect pc to device и провести некоторую проверку.Поэтому я пытаюсь использовать java.lang.Runtime.getRuntime().exec(cmd), чтобы получить adb результат оболочки в моей программе.Но я не знаю, как написать команду adb shell в вызове exec, что-то вроде:

String cmd =adkHome + "adb.exe -s " + device + " shell ls";

затем cd data/app

Как мне это сделать?

Ответы [ 2 ]

1 голос
/ 20 ноября 2011

Это может быть то, что вы ищете?

    
    String cmd = "adb shell ls";
    String cmdreturn = "";
    Runtime run = Runtime.getRuntime();
    Process pr = run.exec(cmd);
    pr.waitFor();
    BufferedReader buf = new BufferedReader(new InputStreamReader(pr.getInputStream()));
    while ((line=buf.readLine())!=null) {
         System.out.println(cmdreturn);
    }
    
    

Что касается предварительных действий в оболочке, я бы рекомендовал написать сценарий оболочки, который вы выполняете. В этом случае вместо

    
    String cmd = "adb shell ls";
    
    
Замени это
    
    String cmd = "shellscript.sh";
    
    

Ура!

0 голосов
/ 16 октября 2011

Если вы хотите запустить это по телефону из Java-приложения, вам просто нужно:

String cmd = "ls";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...