0

とにかく可能な限りSQLiteデータベースを表示しようとしています(ルート化されたデバイスを持っています)。Eclipse でファイル エクスプローラーを試しましたが、データ フォルダーの下に何も表示されません。どこでも検索しようとしましたが、明確な解決策が見つかりませんでした。私もadbシェルを試しましたが、「ls」コマンドを使用してデータフォルダー内のもののリストを表示できません。エラー Opendir に失敗しました。アクセス拒否

これは権利と関係があると思いますが、どうすれば修正できますか

助けてください

4

5 に答える 5

2

ディレクトリを探索するにはルート許可が必要DATAです... From phoneterminal emulatorは仕事をするために使用します.....単に開いてterminal入力suすると、許可が求められます。次に、入力する必要があり、cd data/data/WhereEverYouNeedToGo/databasesパッケージ"WhereEverYouNeedToGo"名にする必要があります。その後、データベースで好きなことを行うことができます。

from PC

ディレクトリを開くterminalか移動してから実行しcmdますadbadb shellsu
cd data/data/WhereEverYouNeedToGo/databases

それが役に立ったことを願っています。

于 2012-08-13T13:46:52.857 に答える
1

「adbroot」を使用してルートモードでadbを実行します

于 2012-08-13T13:43:53.323 に答える
1
adb shell
su
ls /data/

これを試して

于 2012-08-13T13:43:53.640 に答える
0

ルート機能を活用する方法については多くの回答がありますが、Androidはルートを想定せずに設計されているため、アプリの開発中に使用できる他の方法もあります。

1)データベースをSDカードにコピーする機能をエキスパートメニューに含めます。android javaにはファイルコピーメソッドはありません(ほとんどの場合、「cp」シェルコマンドはありません)が、コピールーチンを使用してここで多数の回答を見つけることができます。

2)apkをデバッグ可能にし、run-asコマンドを使用して、アプリケーションのユーザーIDとして実行され、アプリのデータディレクトリで開始するシェルを取得します。アプリにその権限がある場合は、データベースをSDカードにコピーできます。

3)開発中にデータベースファイルの権限を誰でも読み取り可能なものに設定するようにアプリに依頼します。ディレクトリツリーを参照してそこまで移動することはできませんが、フルパス名を指定することでデータベースファイルをadbプルできます。

于 2012-08-13T13:54:11.933 に答える
0

そのディレクトリを探索するには、デバイスをルーティングするか、デバイスを「Android Dev Phone」にする必要があります。エミュレータで確認してみると、データフォルダの中身が見えます。

于 2012-08-13T14:02:34.943 に答える