Android как вытащить базу данных

Как я могу извлечь базу данных sqlite с устройства Android?

Как вытащить базу данных sqlite из устройства Android, такого как эмулятор?

ОТВЕТЫ

Ответ 1

Вы можете использовать эти команды для вытаскивания базы данных с вашего устройства. Написание этих команд через студию Android очень просто. Убедитесь, что вы установили путь к adb глобально в вашу систему. Затем откройте «терминал» снизу до студии Android и рядом с «Android Monitor». Теперь вы просто обновляете следующие команды с фактическим именем пакета вашего приложения и именем файла базы данных. Вы получите файл с устройства.

команда для Android 5.0+/data/data/package.name/databases/file будет:

Ответ 2

  • подключите устройство к компьютеру
  • откройте командную строку в /sdk-directory/tools
  • type adb pull /data/data/com.example.app/databases/database.db

где com.example.app — ваше имя пакета приложения, а database.db — файл базы данных

что в случае, если ваше устройство укоренилось, если не попробовать следовать

Ответ 3

Лучший способ просмотра и управления вами базы данных приложений Android — использовать эту библиотеку https://github.com/sanathp/DatabaseManager_For_Android

Его единственный файл активности java, просто добавьте java файл в исходную папку, вы можете просматривать таблицы в базе данных приложений, обновлять, удалять, вставлять строки в таблицу. Все, что из вашего приложения.

Когда разработка завершена, удалите java файл из вашей папки src.

Это очень помогло мне. Надеюсь, это тоже поможет.

Вы можете посмотреть 1-минутную демонстрацию здесь: http://youtu.be/P5vpaGoBlBY

Ответ 4

Ответ 5

Я знаю, что это старый вопрос, однако это то, что я сделал, чтобы вытащить файл базы данных SQLite из приложения на устройство.

  • Сохранение файла из пакета приложения на устройство sdcard

adb -d shell «run-as com.dautechnology.abdimuna.smartparking cat /data/data/ /databases/ > /sdcard/ «

Вышеприведенная команда сохранит файл на /sdcard Вы можете проверить файл на adb shell ls sdcard/ Затем выйдите из оболочки adb, набрав exit

  1. Вытащите файл из SD карты в текущее рабочее место.

adb pull sdcard/ 3. Переместите файл на Рабочий стол или место вашего желания.

Я надеюсь, что это поможет кому-то там.

Ответ 6

Если вы используете eclipse, перейдите в режим DDMS. из вкладки «Проводник» → data- > data- > имя пакета приложения- > databases- > имя базы данных

выберите файл базы данных базы данных, затем нажмите кнопку pull

Ответ 7

Вы можете пропустить все эти средние этапы с помощью одной команды.

В оболочке вашего ПК:

Ответ 8

Ответ 9

Сделайте это программно в приложении

Убедитесь, что предоставлено разрешение

Ответ 10

с версии 24 и далее я использую эти команды для загрузки базы данных

Источник

Android как вытащить базу данных

Ни для кого не секрет, что с нашими «умными» устройствами может произойти всякое, в том числе и такая неприятная поломка как разбитый тачскрин. Что делать в таком случае? Ведь в нем остались все наши данные: контакты, сообщения и пр.

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

1. Самое очевидное — меняем тачскрин. Где взять? Спрашиваем в теме аксессуаров своего устройства или тут.

2. Если аппарат поддерживает протокол MHL, можно попробовать подключить его по HDMI к монитору или телевизору. Подключаем мышь по Bluetooth или USB и в случае успешного подключения пробуем сохранить свои данные на карту памяти.

Читайте также:  Android перевод с французского

3. Если была включена отладка по USB то пробуем через ADB командой

или чрез приложение QtADB. Подробнее про ADB можно почитать в этой теме ADB и все что с помощью него можно сделать

4. Пробуем достать контакты с помощью приложения MyPhoneExplorer. Ставим и копируем содержимое в компьютер. Телефонная часть программы устанавливается без подтверждения с дисплея. Отладка по USB должна быть включена!

Сообщение отредактировал KEEPERekb — 23.03.19, 22:47

Помогите вытащить контакты!

Fly IQ440
ОС и прошивка: Android 4.0.4

Есть стоковый телефон Fly IQ440 с разбитым стеклом экрана. Стекло сняли. Тач, само собой, не работает, но экран и изображение в полном порядке. Все что осталось от сенсора это небольшой шлейф, торчащий возле экрана. При касании к шлейфу телефон реагирует, но очень непредсказуемо и сделать что-то толковое таким образом почти нереально.

Задача — вытащить контакты, которые лежат в памяти телефона.

Сам я пару дней искал информацию в интернете и на этом форуме, делал попытки восстановить контакты, но все решения, которые я находил требуют включения отладки по USB или плюс к ней еще и рут. Попытки включить отладку путем мацанья шлейфа не увенчались успехом. Максимум, мне удалось зайти в настройки и проскролить до пункта «для разрабочиков», но попасть по нему так и не вышло. Думал про управление смартом через вай фай или блютуз (их включить не составляет особого труда), но все что нашел — требует предварительной установки приложения на смарт. Также пробовал подключать мышку через OTG кабель с активным питанием — не определяется.

В итоге, я решил спросить совета у вас. Возможно, конкретно в такой ситуации есть какие-то способы восстановления контактов?
:thank_you:

Сообщение отредактировал SileLence — 05.08.14, 14:41

Всем спасибо, вопрос решился общими усилиями коллег на работе. При этом решился до смешного просто — без прошивок, кабелей и левого софта. Описываю!

Возникла идея попробовать зайти в системное меню телефона. Сначала попробовал включить с зажатыми «power» и «volume-«, но толкового там ничего нет, а потом включил «power» + «volume+» и там нашелся интересный пункт меню «backup user data». Управление в меню осуществляется с помощью клавиш громкости и включения. Забыл сказать, перед этим вставил карту памяти в телефон.
Началось копирование бекапа весом 144 мб. Когда закончилось, флешку извлек, вставил в компьютер и обнаружили файл с расширением .backup, распаковал с помощью 7zip. Полученный файл опять распаковал и увидел кучу папок. По пути

лежит заветный contacts.db.
Дальше выполнил первые два пункта из этого поста и запрос из этого. Полученный файл открыл Экселем.

Всем спасибо, надеюсь, мой опыт кому-то поможет :thank_you:

Сообщение отредактировал SileLence — 05.08.14, 16:27

Отладка по USB не включена.
Дисплеи не рабочий.

сем спасибо, вопрос решился общими усилиями коллег на работе. При этом решился до смешного просто — без прошивок, кабелей и левого софта. Описываю!

Возникла идея попробовать зайти в системное меню телефона. Сначала попробовал включить с зажатыми «power» и «volume-«, но толкового там ничего нет, а потом включил «power» + «volume+» и там нашелся интересный пункт меню «backup user data». Управление в меню осуществляется с помощью клавиш громкости и включения. Забыл сказать, перед этим вставил карту памяти в телефон.
Началось копирование бекапа весом 144 мб. Когда закончилось, флешку извлек, вставил в компьютер и обнаружили файл с расширением .backup, распаковал с помощью 7zip. Полученный файл опять распаковал и увидел кучу папок. По пути
/data/data/com.android.providers.contacts/databases/
лежит заветный contacts.db.
Дальше выполнил первые два пункта из этого поста и запрос из этого. Полученный файл открыл Экселем.

Читайте также:  Ms teams android auto

Всем спасибо, надеюсь, мой опыт кому-то поможет

SileLence, Привет,ты уверен,что распаковывал с помощью 7-зип? Просто таже самая ситуация, но 7-зип не распаковывает, говорит,что не его формат.

Для распространенных моделей аппаратов, и в крупных городах, иногда можно обойтись без замены экрана как такового.

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

Видимо этим вариантом и займусь..

п.с. через ADB пишет, что device unauthorized. Вот только мне кажется, что я точно включал отладку по USB когда делал рут права(( С этим уже ничего не поделать?

Контакты Android хранятся в директории /data/data/com.android.providers.contacts/databases/ в файле contacts.db или на некоторых прошивках contacts2.db.
Данный файл является базой данных sqlite и может быть прочитан с помощью соответсвующего программного обеспечения.

Теперь как я доставал контакты с телефона у которого отказал сенсор. Экспорт контактов никогда не производился, была отключена функция отладки по USB, и пользуясь способом способом, 7zip не смог распаковать .backup сделанный стандартным рекавери, а adb почему-то не видел требуемые файлы в папке
data.

Находим на 4pda информацию по установке ClockworkMod recovery (CWM) FAQ по ClockworkMod recovery для вашего девайса и качаем требуемые файлы.
Для этого как правило нам понадобятся:
1. драйвера для подключения девайса к компьютеру
2. recovery.img — образ CWM
3. fastboot или FlashTool — потребуется для прошивки образа CWM в девайс, выбирайте более понятный для вас
4. нужен будет архиватор для распаковки файла резервной копии (я использовал 7zip)
5. и какую-нибудь программку для работы с базами данных (я использовал sqlitestudio)

теперь переходим к действиям по вытаскиванию нужной инфы:
1. по скачиванию и установке драйверов, образов и программ писать особо не буду большая часть должна быть описана в инструкции к вашему девайсу на 4PDA и делается почти везде одинаково
2. установив CWM пробуем войти в него (обычно для этого требуется зажать кнопку включения и увеличения/уменьшения громкости)
3. там выбираем пункт по созданию бэкапов ‘buckup and restore’ и делаем его на флэшку ‘Buckup’ 🙂
4. скачиваем с флэшки на комп файлик data.ext4.tar, он должен быть в папке clockworkmod/backup (в название так же будет фигурировать дата ее создания)

объясню смысл текущего запроса
создаем табличку с колонками normalized_number, display_name на основе таблиц phone_lookup, raw_contacts
при условии, что данные из таблицы phone_lookup и колонки raw_contact_id = данным из таблицы raw_contacts колонки contact_id
исходя из этого кода могу предположить, что:
есть некие таблицы в которых есть колонки, в каждой из которой хранятся однотипные данные, в нашем случае это номера строк, имя и номер телефона
phone_lookup
raw_contact_id | normalized_number
1 |+79001111111
2 |+79002222222
raw_contacts
contact_id | display_name
1 |Вася
2 |Петя

т.е. мы с помощью нашего запроса получаем новую табличку, строки которой формируются из строк двух исходных путем их объединения
причем в одну строку поподают данные где raw_contact_id = contact_id
normalized_number|display_name
+79001111111|Вася
+79002222222|Петя

запросов уйма, т.к. почти в каждой таблице данные дублируются, доставать имя и телефон можно из разных таблиц и колонок, посмотрев все таблички и найдя нужные данные.
Можно на основе данного запроса сделать свой
SELECT ‘колонки через запятую’ FROM ‘таблицы через запятую’ WHERE ‘условие’
‘колонки через запятую’ можно писать в таком виде [таблица].[колонка] квадратные скобки можно опустить, но они могут спасти от ошибок, если вдруг названия таблиц/колонок имеют названия зарезервированных команд. Здесь мы через запятую указываем, какие данные хотим видеть в новой таблице

Читайте также:  Enable developer settings android

‘таблицы через запятую’ можно писать в таком виде [таблица]. Здесь мы указываем данные из каких таблиц мы хотим получить

‘условие’ можно писать в таком виде [таблица1].[колонка1] = [таблица2].[колонка2], так же условий может быть несколько и они пишутся через логические операторы and и or, а так же могут группироваться с помощью круглых скобок. Условия нужны, чтобы объединить данные нескольких таблиц и с их помощью можно задавать фильтры. Например, если мы добавим в конце нашего запроса строку из одинарных кавычек ‘ AND display_name = «Саша»‘, то в нашей таблице окажутся не все контакты из нашего листа, а только номера телефонов людей которых зовут «Саша».

так же я обнаружил в данной базе давно удаленные номера, возможно это будет кому-то интересно.

таким же способом можно достать SMS из файла /data/data/com.android.providers.telephony/databases/mmssms.db
в файле data.ext4.tar лежат все пользовательские файлы, которые вам может понадобиться забрать с девайса

Сообщение отредактировал Gridzilla — 30.09.14, 12:17

Источник

Как вытащить базу данных sqlite с устройства Android?

Как вытащить базу данных sqlite из устройства Android, например, эмулятора?

Вы можете использовать эти команды для вытаскивания базы данных с вашего устройства. Набирать эти команды через студию Android очень легко. Убедитесь, что вы установили путь adb глобально к своей системе. Затем откройте «терминал» снизу до студии Android и рядом с «Android Monitor». Теперь вы просто обновляете следующие команды с фактическим именем пакета вашего приложения и именем файла базы данных. Вы получите файл с устройства.

Команда для Android 5.0+ /data/data/package.name/databases/file будет:

  • Подключите устройство к компьютеру
  • Открыть командную строку в /sdk-directory/tools
  • Type adb pull /data/data/com.example.app/databases/database.db

Где com.example.app – это имя вашего прикладного пакета, а database.db – файл базы данных

Это на случай, если ваше устройство укоренилось, если не попробовать

Лучший способ просмотреть и управлять вашей базой данных приложений Android – использовать эту библиотеку https://github.com/sanathp/DatabaseManager_For_Android

Его единственный файл активности java, просто добавьте java-файл в исходную папку, вы можете просматривать таблицы в базе данных приложений, обновлять, удалять, вставлять строки в таблицу. Все, что из вашего приложения.

Когда разработка завершена, удалите файл java из папки src.

Это очень помогло мне. Надеюсь, это тоже поможет.

Вы можете посмотреть 1-минутную демонстрацию здесь: http://youtu.be/P5vpaGoBlBY

Если вы используете eclipse, перейдите в режим DDMS. Из вкладки «Проводник» -> data-> data-> имя пакета приложения-> databases-> имя базы данных

Выберите базу данных db-файла, затем нажмите кнопку pull

Я знаю, что это старый вопрос, однако это то, что я сделал, чтобы вытащить файл базы данных SQLite из приложения на устройство.

  1. Сохранение файла из пакета приложения на SD-карту устройства

adb -d shell «run-as com.dautechnology.abdimuna.smartparking cat /data/data/ /databases/ > /sdcard/ «

Вышеприведенная команда сохранит файл на / sdcard. Вы можете проверить файл с помощью adb shell ls sdcard/ Затем выйти из оболочки adb, набрав exit

  1. Вытащите файл из SD карты в текущее рабочее место.

adb pull sdcard/ 3. Переместите файл на Рабочий стол или место вашего желания.

Источник

Оцените статью