Как получить файлы из эмулятора Android - PullRequest
0 голосов
/ 03 ноября 2018

Я совершенно новичок в Xamarin Forms и разработке мобильных приложений. Я испытываю удачу с тестовым приложением, следуя инструкции из Интернета, чтобы создать приложение для Android.

Приложение уже запущено, и я могу хранить данные в локальной базе данных SQLite в эмуляторе Android Visual Studio 2017.

Теперь я хотел бы проверить созданную базу данных SQLite на моем хост-компьютере Windows. Есть ли способ вывести созданную базу данных SQLite из эмулятора Android?

Я гуглил и нашел статью, в которой говорилось, что я должен использовать «Android Device Monitor» из Visual Studio, и внутри этого монитора у меня есть вкладка «File Explorer», которая, кажется, показывает мне файловую систему, выглядящую как linux-y. Я думаю, это файловая система эмулируемого Android. Но где я могу найти свою базу данных SQLite внутри этого «Проводника»?

База данных была создана внутри папки System.Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData), и я прочитал, что я нашел бы свою базу данных в папке «данные», но я не могу открыть эту папку в «Проводнике» на «Android Device Monitor». "без видимой причины, приведенной мне.

Любая помощь по этому вопросу была бы великолепна.

1 Ответ

0 голосов
/ 06 ноября 2018

Причины:

у вас нет прав на чтение или запись файлов базы данных

Решение:

1, открыть терминал

2, cd [ANDROID_SDK_PATH] (для меня на Windows cd D: \ android-sdk)

3, cd platform-tools

4, оболочка adb (работает, только если запущен только один эмулятор)

5, данные CD / данные

6, adb shell su -c "chmod 777 / data"

7, adb shell su -c "chmod 777 / data / data"

8, adb shell su -c "chmod 777 / data / data / [имя_пакета]"

9, adb shell su -c "chmod 777 / data / data / [имя_пакета] / database"

10, adb shell su -c "chmod 777 / data / data / [имя_пакета] / database / *"

...