2012-03-29 9 views
0

私はrootでアンドロイドデバイスを持っています。私はいくつかの小さなアプリを実装しようとします。このアプリは/ proc/pid/netからファイルを読み込む必要があります。私はRuntime.getRuntime().exec(new String[] { "su", "-c", "cat /proc/"+PID+ "/net/tcp6" });でそれを作ったが、私は各pidのsupermissionを受け入れなければならない。アプリからアンドロイドでシステムファイルを読み込む方法はいくつかあります。 FileReaderで何か? exec -commandoを使わないでsu権限を取得するにはどうすればよいですか?Systemfoldersからファイルを読む方法

答えて

1

execコマンドは、どのようにしてsu権限を取得するのですか。 chmod 777することができますし、それらはおそらくjava経由で読み取ることができます。つまり、読み込みたいファイルをsdcardやアプリケーションデータの場所に移動し、そこから読み取ることができます。 Hereは、ルートにとって非常に有用なものです。毎回手動でexecコマンドを使用する必要はありませんが、RootToolsはまだexecを使用します。

Process p = Runtime.getRuntime().exec("su"); 

ルートへのアクセスを取得します:

は、私はあなたのような何かを行う場合は信じています。
そして、あなただけ行うことができます。

p.getRuntime().exec("command"); 

をして、あなたがいる限り、そのプロセスがまだアクティブであるようにsuを配置する必要はありません。

私はかなりの時間で上記の(プロセスで)説明したことを行っていないが、私は間違っている可能性があります。毎回suを含める必要があります。しかしいずれにせよ、私はRootToolsを使用することをお勧めします。

+0

私はRootToolsを試してみます。 2番目のことは動作しません。なぜなら、 'getRuntime()。exec'を使うたびに、それはターミナルオープンの新しいインスタンスになり、2度目にはsu-permissionsを持たないからです。 – Aprel

+0

大丈夫です。私はそれが事実かもしれないと思ったが、確かではなかったので、とにかくお勧めしたいと思った。 – Jakar

+0

@Aprel私は正しい方法を忘れてしまった。あなたが[この質問](http://stackoverflow.com/questions/7129144/mount-rw-system-in-android-application-to-edit-read-only-files/8160400)に行くと、ルートアクセスを使用する方法。 – Jakar

関連する問題