marimir Ответов: 0

Как получить базу данных sqlite с помощью команд adb?


Несколько месяцев назад я разработал приложение для windows, чтобы получить мою базу данных Android-приложения sqlite с помощью этой команды adb : adb exec-out run-as mypackagename cat /databases/mydbname.db > myPCaddress(D:\mydbname.db)

Он работал правильно, но через некоторое время, когда я хочу проверить его снова, команда копирует файл на ПК, который имеет размер 1 Кб и даже не файл базы данных! Я так запуталась и не знаю, в чем проблема.Пожалуйста, помогите мне.

Что я уже пробовал:

Я попытался с помощью : АБР -д ракушка "бег-как имя_моего_пакета кошка /сведения/сведения/имя_моего_пакета/базы данных/mydbname.дБ" &ГТ; myPCaddress (D:\mydbname.db)
и у меня есть тот же результат, и с помощью adb pull он показывает, что удаленное разрешение отклонено.

Richard MacCutchan

Ваш вопрос не совсем ясен. Что делает приложение Windows в этой ситуации?

marimir

приложение windows запускает команду adb :adb exec-out run-as mypackagename cat /databases/mydbname.db > myPCaddress(D:\mydbname.db)

Richard MacCutchan

Пожалуйста, отредактируйте свой вопрос, покажите код, в котором есть проблема, и какие результаты вы видите.

marimir

забудь об этом вопросе..
Я хочу скопировать базу данных моего android - приложения на свой компьютер с помощью команды adb. Я открылся cmd.exe и перейдите в папку adb. После выполнения этой команды ==> "adb exec-out run-as mypackagename cat /databases/mydbname.db > myPCaddress(D:\mydbname.db)" размер скопированного файла на моем ПК составляет 1 Кб, и это не файл базы данных sqlite. Это моя проблема.

Richard MacCutchan

Вы должны использовать "adb pull", который будет делать правильную двоичную копию. Команда cat предназначена для текстовых файлов.

marimir

Я тестировал ==&ГТ;"АБР тянуть /сведения/сведения/имя_моего_пакета/базы данных/mydbname.myPCaddress дБ(D:\mydbname.db)" но я получаю "удаленный отказано "

Richard MacCutchan

Используйте "adb shell run-as" с именем вашего пакета, чтобы получить доступ к частному пространству. Затем вы можете использовать команду pull в оболочке.

marimir

Я проверил ==> "adb shell run-as mypackagename" и я получаю "не удалось установить возможности: операция не разрешена"

Richard MacCutchan

Вы дали полное название пакета? В моем случае это "adb shell run-as com.utils.cardapp".

marimir

У меня нет корневого устройства, поэтому у меня нет разрешения.

Richard MacCutchan

Мое устройство не укоренено (насколько мне известно), но у него есть функция отладки, которая позволяет мне это делать. Если это проблема с устройством, то мы ничем не можем вам помочь.

marimir

вы имеете в виду отладку usb с помощью функции отладки?

Richard MacCutchan

Да, это работает на моем телефоне.

marimir

хорошо, спасибо за ваш ответ.

0 Ответов