ルート権限を取得したAndroid2.1デバイスでコマンドを実行します
文字列パス="/data/data/com.android.providers.settings/databases/settings.db"; Runtime.getRuntime()。exec( "/ system / bin / chmod -f 777" +パス);
ただし、このコマンドはターゲットファイルに対して何も実行しません。何か案が?
RootToolsライブラリは、rootをチェックしてrootコマンドを発行するための簡単な方法を提供します。
RootTools.isRootAvailable()
List<String> output = RootTools.sendShell(command);
最初にrootユーザーとしてランタイムを取得する必要があります。GoogleCodeで入手可能なMarketEnablerソースから使用できる優れたShellInterfaceクラスがあります。ただし、このソースコードはGPLの下でリリースされていることに注意してください。
基本的に、 suコマンドがどこにあるかを判別し、STDINとSTDOUTの入力ストリームと出力ストリームを使用して一種のシェルを作成する必要があります。これらを使用すると、コマンドを「ターミナル」にプッシュできます。すべてのコマンドが完了したら、バッファをフラッシュして、ランタイムが完了するのを待ちます。完了したら、ランタイムインターフェイスを閉じることができます。
次に、作成/変更などを試みたファイルを調べて、すべてが正しく機能するかどうかを確認します。
Bao Le Androidアプリでシェルコマンドを削除しようとしていると思います。ここ(AndroidアプリでAndroidネイティブコードを実行する)は、アプリからコマンドを実行する多くの方法のいくつかです。