/data/data/
の中で保護されたデータベースにアクセスして変更できるアプリを作成しようとしています。このプロセスは明らかにroot特権を必要とし、私はrootedデバイスでこれをテストしています。 SQLiteデータベースにアクセスするための一般的なコードは、完全であり、他の場所にあるテストデータベース(/sdcard/
)に対して機能します。Androidで保護されたデータベースにアクセスして変更するにはrootを使用
しかし、私がアプリケーションを/data/data/
の中のデータベースにアクセスさせたい場合、通常のユーザーとしてアクセスしようとすると明らかに失敗します。私は、ちょっとAndroid用のsu
バイナリを使用するという話題を読んでいます。これは通常、シェルコマンドのみを実行するために使用されていたことを理解しています。
この作業を行う私の最初の考えは、アプリケーションの起動時にファイルのアクセス許可を変更し、終了時に元に戻すというものでした。したがって、アプリケーション自体で実際に実装する前に、ファイルエクスプローラを使用して、アクセス許可をrw-rw-rw-
に変更しました。しかし、私のアプリケーションはまだデータベースを開くことができませんでした。
私の次のアイデアは、シェルから直接sqlite3
プログラムを使用していたが、私は私のROMが付属していませんので、私はそれを自分自身を配布しなければならないこと、が分かった(チタンバックアップはそれを行うようです) 。
は、しかし、より良い方法がないかもしれないなら、私は思ってしまうものがある:私は私のファイルエクスプローラとしてRoot Explorerを使用していますが、それはどの SQLiteデータベースを閲覧する組み込みの方法があります。カスタムのsqlite3
バイナリで出荷されていないようで、私の携帯電話にはそれ自体がないとすれば、通常のJavaツールを使用してアクセスが行われるようです。しかし、アプリはどのようにしてroot権限を取得するのですか?
Androidアプリケーションをルートとして実行する方法はありますか?それとも、私がアクセスできなくなったアクセス許可の設定を忘れたのですか?または誰でも方法を知っていますルートエクスプローラはそれをしますか?