Androidアプリ内のSQLiteデータベースファイルをパソコンに持ってくる
毎回引っかかてる気がしたのでいい加減覚えるためにメモ
ググってよく見つかる方法だとなぜかうまくいかないし
環境に依存してそうなので以下に環境を載せておく
- 502sh(Android5.1.1)
- Windows10
以下がpullするまでのコマンド
C:\Users\vayacico>adb shell shell@SG502SH:/ $ run-as com.vayacico.suicakeeper2 shell@SG502SH:/data/data/com.vayacico.suicakeeper2 $ chmod 777 databases/dbname.db shell@SG502SH:/data/data/com.vayacico.suicakeeper2 $ exit shell@SG502SH:/ $ cp /data/data/com.vayacico.suicakeeper/databases/user.db /sdcard/ shell@SG502SH:/ $ exit C:\Users\vayacico>adb pull /sdcard/user.db /sdcard/user.db: 1 file pulled. 1.8 MB/s (28672 bytes in 0.015s) C:\Users\vayacico>
ググって見つかる多くの方法だとrun-as内で直接SD直下にコピーできてるっぽいんだけど自分の環境でやるとPermission deniedされる.
というわけで脳死でchmod 777して通常ユーザーから見れるようにしてからコピーした.
バージョン間の問題かな?