0

adb input textメソッドを使用して現在実行中のアプリケーション(自分のものではない)にテキストを入力しようとしています。これは、'adb input text "Android"などのコマンドプロンプトから実行した場合、およびターミナルエミュレータ。ただし、以下のコードは正常に実行されますが、画面に出力が表示されません。また、失敗していないがテキストを出力しないシェルコマンドを実行するために、他のさまざまな方法を試しました。

try {
            //Runtime.getRuntime().exec("su");
            Runtime.getRuntime().exec("input text \":\"");
        } catch (IOException e) {
            e.printStackTrace();
        } 
4

3 に答える 3

1

Androidアプリにテキストを挿入するには、インジェクターに必要なものがあります

   android.permission.INJECT_EVENTS 

許可があるので、システムアプリである必要があります。

Runtime.getRuntime()。execにはこの権限がありません。

于 2013-01-14T17:03:31.173 に答える
0

ネイティブ実行可能ファイルからコマンドを実行すると、正常に機能します。NDKバイナリをビルドして、以下を実行します。

char * command = "input text hello%sworld\0";
system( command );//fork and exec input text ...
于 2015-07-13T11:36:11.523 に答える
0

多分あなたは使用する必要があります: Runtime.getRuntime().exec("shell input text");

于 2019-02-19T23:05:22.117 に答える