Чтение файла базы данных с устройства Android - PullRequest
3 голосов
/ 27 мая 2011

Я пытался извлечь копию моей базы данных sqlite из моего приложения для Android для dev. Моей первой попыткой было позвонить:

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

Но тогда я застреваю здесь, поскольку у меня нет разрешения на pull или даже просмотр файлов в этом каталоге!

Так что я решил попробовать DDMS File Explorer, который дает мне следующее: File explorer

Но когда я пытаюсь извлечь файлы отсюда (я бы ожидал, что они будут в папке с данными), он просто тянет каталог и ничего больше. Как я могу сделать это, чтобы получить копию базы данных, которую мое приложение создает / использует?

Я пробовал это, когда телефон находится на SD-карте и в памяти телефона. Я думаю, я мог бы скопировать на SD-карту, а затем подключить SD-карту к ПК, а не к телефону, и сделать это таким образом? Не уверен, что это сработает, и было бы довольно раздражающе, если бы я так разработал!

Спасибо

Ответы [ 2 ]

2 голосов
/ 27 мая 2011

Если ваше устройство не предоставляет вам доступ к этому каталогу (и ваше устройство не имеет root-прав - если вы станете пользователем root, у вас будет доступ), вам потребуется помощь от вашего приложения.

Приложение может, например, скопировать databases/your_database_name.db в удобочитаемое место, возможно, на SD-карту.Тогда вы можете тянуть оттуда.

1 голос
/ 27 мая 2011

Если вам просто нужна БД для общей проверки / просмотра, вы можете запустить свое приложение на эмуляторе и получить оттуда БД. Если вам нужен конкретный экземпляр на вашем устройстве, вам нужно выполнить рутирование вашего устройства, как предлагают другие.

...