3

私は開発用のAndroidアプリからsqliteデータベースのコピーをプルしようとしています。私の最初の試みは電話することでした:

./adb shell
cd data/data
cd com.example.app
cd databases

pullしかし、そのディレクトリにあるファイルを実行したり、表示したりする権限がないため、ここで立ち往生しています。

だから私は私にこれを与えるDDMSファイルエクスプローラーを試してみようと思いました: ファイルエクスプローラー

しかし、ここからファイルをプルしようとすると(データフォルダーにあると思います)、ディレクトリをプルするだけで、他には何もプルしません。アプリが作成/使用しているデータベースのコピーを取得するには、どうすればよいですか?

電話がSDカードと電話メモリにあるときにこれを試しました。SDカードにコピーしてから、SDカードを電話ではなくPCに接続して、そのようにすることができると思いますか?それがうまくいくかどうかわからないので、そのような開発をするのはかなり面倒です!

ありがとう

4

2 に答える 2

2

デバイスがこのディレクトリへのアクセスを許可しない場合(そしてデバイスがルート化されていない場合-ルート化するとアクセスできるようになります)、アプリケーションからの支援が必要になります。

アプリケーションは、たとえば、databases/your_database_name.dbSDカード上の読み取り可能な場所にコピーできます。次に、そこから引っ張ることができます。

于 2011-05-27T15:09:37.890 に答える
1

一般的なチェック/表示にDBが必要な場合は、エミュレーターでアプリを実行し、そこからDBを取得できます。デバイスに特定のインスタンスが必要な場合は、他の人が示唆しているように、デバイスをルート化する必要があります。

于 2011-05-27T15:14:44.307 に答える