36

adb私のAndroidアプリケーションを介してコマンドを実行できるかどうか、誰でも言えますか。実行できる場合、どのように実装できますか?

4

7 に答える 7

31

あなたはこれでそれを行うことができます:

Process process = Runtime.getRuntime().exec("your command");
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(process.getInputStream()));

tryandcatchステートメントで囲むことを忘れないでください。

編集:

@Phixは正しいです、ProcessBuilderを使用する方が良いでしょう。

于 2012-11-14T15:32:02.483 に答える
14

通常の Android アプリは、 経由で開始されたプロセスに対して異なる権限を持っていますadb。たとえば、 経由で開始されたプロセスadbは画面のキャプチャを許可されますが、通常のアプリはそうではありません。そのため、 経由でアプリからコマンドを実行できますが、 からRuntime.getRuntime().exec()実行した場合と同じ権限はありませんadb shell

于 2014-04-10T10:14:09.510 に答える