0

アプリに bash cmd を実行するボタンをいくつか作成しました。

これが私の文字列です:

    final String[] test = {"su","-c","echo test > /system/test.txt"};

このコマンドは機能します。実際、/system/ に test.txt ファイルがあり、内部に test という行があります。

私の質問は次のとおりです。コマンド実行のボタンを押すと、デバイスは文字列「echo test /system/text.txt」でトーストを作成します。とにかく、これは「-c」が原因だと思います:

    final String[] test = {"su","echo test > /system/test.txt"};

動作しません。

    final String[] test = {"su","-c","echo test > /system/test.txt >> /dev/null"};

同様に機能せず、「echo test /system/test.txt /dev/null」を示すトーストを作成します

この「問題」を回避する方法はありますか?

また、それを実行するボタンをクリックすると、糸車でトーストを作成する小さな機能を誰かに見せてもらえますか?

ありがとう!!!

4

1 に答える 1

-1

マニュアルからのこの抜粋は、オプションsuに関するあなたの質問をクリアするはずです:-c

-c, --command=COMMAND pass a single COMMAND to the shell with -c

final String[] test = {"su","-c","echo test > /system/test.txt >> /dev/null"}; 

Androidにはデバイスがないため、機能しません/dev/null-cそれを機能させるには、オプション afterが必要でsu、 を取り除く必要があります/dev/null。代わりに Android API を使用して、このファイルを削除できます。

于 2013-01-25T11:20:38.410 に答える