Где данные AsyncStorage, физически расположенные на устройствах Android?
Может быть, заголовок не очень ясен. Вот что я имею в виду/должен знать -
Если я использую SQLite для некоторых целей хранения данных в приложении Android, я могу видеть созданный в моем телефоне БД. (/root/data или что-то, что я думаю). Я просмотрел БД и выполнил некоторые манипуляции, это помогает в разработке.
Теперь я использую API AsyncStorage для реагирования на native.
В моем коде есть некоторые проблемы, я не могу получить сохраненные данные из магазина. Не уверен, что я делаю неправильно.
Итак, чтобы узнать, что случилось, есть ли способ просмотреть список объектов, которые хранятся на телефоне? Если да, то где? И как мне его просматривать?
PS: Я отлаживаю приложение React Native с помощью журналов Android Studio. Поскольку мой хром на linux плохой мальчик (любая помощь будет оценена)!
Ответы
Ответ 1
React Native на Android фактически использует SQLite для резервного копирования API AsyncStorage. Файл базы данных /data/data/<your_app>/databases/RKStorage
на вашем устройстве/эмуляторе. Ключи и значения хранятся в таблице с именем catalystLocalStorage
.
Ответ 2
Вы можете выполнить следующие шаги
-
Запустите apk в режиме отладки на вашем устройстве и подключите свое устройство к вашей системе.
-
Откройте командную строку.
-
Чтобы получить список баз данных, связанных с вашим приложением, используйте команду
adb -d shell "run-as om.yourpackage_name ls /data/data/com.yourpackage_name/databases/
вы можете получить имя пакета из файла AndroidManifest.xml
- Теперь у вас есть имя базы данных в приведенном выше списке, затем скопируйте эту базу данных на SDCard в свой телефон, используя следующую команду для реакции native, это будет RKStorage
adb -d shell "run-as com.yourpackage cp/data/data/com.your_package/databases/RKStorage/sdcard/Rkstorage"
- Теперь используйте команду ниже, чтобы вытащить выше скопированную базу данных с вашего устройства в вашу систему. ниже команда скопирует базу данных в каталог, где существует adb.exe.
adb pull/sdcard/Rkstorage
-
Теперь установите Firefox SQLite Manager: https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/
-
Откройте Firefox SQLite Manager из Tools- > SQLite Manager
-
В SQLite Manager перейдите в Database- > Connect Database и откроется окно "Открыть файл", где вы выберите "Все файлы внизу вашего окна" и перейдите туда, где скопирована ваша база данных.
Спасибо.