Якщо на вашому пристрої працює Android v4 або новішої версії, ви можете витягувати дані додатків, включаючи базу даних, без кореня за допомогою adb backupкоманди, а потім витягувати файл резервної копії та отримувати доступ до бази даних sqlite.
Спочатку резервні копії даних програми на ПК через кабель USB із наступною командою замініть app.package.nameфактичною назвою пакета програми.
adb backup -f ~/data.ab -noapk app.package.name
Це запропонує вам "розблокувати пристрій і підтвердити операцію резервного копіювання". Не надайте пароль для шифрування резервного копіювання , щоб ви могли його витягнути пізніше. Натисніть кнопку "Завантажити мої дані" на своєму пристрої. На екрані відображатиметься назва пакета, який ви створюєте резервну копію, а потім закривайтесь самостійно після успішного завершення.
Отриманий data.abфайл у вашій домашній папці містить дані програми у форматі резервного копіювання Android. Для його вилучення використовуйте таку команду:
dd if=data.ab bs=1 skip=24 | openssl zlib -d | tar -xvf -
Якщо вищезазначене закінчилося openssl:Error: 'zlib' is an invalid command.помилкою, спробуйте нижче.
dd if=data.ab bs=1 skip=24 | python -c "import zlib,sys;sys.stdout.write(zlib.decompress(sys.stdin.read()))" | tar -xvf -
Результат - apps/app.package.name/папка, що містить дані програми, включаючи базу даних sqlite.
Для отримання більш детальної інформації ви можете ознайомитися з оригінальною публікацією в блозі .