Включить файл данных в мое приложение для Android

Я создаю приложение, которое хочу заполнить файлом данных, который приложение будет использовать в качестве исходного состояния. Где в структуре проекта Eclipse добавить файл данных, чтобы при развертывании приложения на устройстве (и эмуляторе) файл данных развертывался вместе с ним?


Это будет полезно, если вы сможете указать тип файла данных и цель. Если вы хотите инициализировать определенные настройки, вы можете сделать это с помощью:

Опишите настройки в xml — сохраните в RES/XML:

    xml version = "1.0" encoding = "utf-8"?>       

Загрузить точно onCreate ():

 /* Загрузка настроек по умолчанию при первом запуске приложения  run */PreferenceManager.setDefaultValues ​​(getApplicationContext (), R.xml.generalsettings, false);  

Else,

Вы можете жестко закодировать данные и сохранить в базе данных:

  String sql = "CREATE TABLE ..." + "INSERT VALUES ... INTO ..."; db.ExecSQL (sql);  

Или вы можете сохранить этот файл в папке Assets и использовать getAssets () для получения файла:

  getAssets (). open  (имя_файла)  

Например. используя файл сырых данных. В случае ресурсов замените указанную выше команду:

  InputStream is = context.getResources (). OpenRawResource (R.raw.artoodict);  BufferedReader br = новый BufferedReader (новый InputStreamReader (есть));  String readLine = null;  попробуйте {while ((readLine = br.readLine ())! = null) {}}} catch (IOException e) {e.printStackTrace ();  }  

4



Доступ к личным данным на Android

Маргарет Мейнард-Рид

29 апреля 2017 г. · чтение 3 мин.

Согласно официальной документации разработчика, вот варианты хранения данных на Android:

  • Общие настройки — Хранить частные примитивные данные в парах ключ-значение.
  • Внутреннее хранилище — хранить личные данные в памяти устройства.
  • Внешнее хранилище — храните общедоступные данные на общем внешнем хранилище. i>
  • Базы данных SQLite — хранить структурированные данные в частной базе данных.
  • Сетевое подключение — хранить данные в сети с вашим собственным сетевым сервером.

Помимо параметра сетевого подключения, все остальные параметры представляют собой сохранение данных на устройстве. И SharedPreferences, и базы данных SQlite являются частными данными, хранящимися на устройстве. Эти файлы недоступны для других приложений или пользователей, если вы не используете эмулятор или рутированное устройство. Вот несколько способов доступа и проверки этих личных данных для отладки во время разработки .

Изображение для сообщения

На эмуляторе или корневом устройстве

Если вы используете эмулятор или рутированное устройство. У вас должен быть доступ к личному хранилищу устройства. Вы можете получить доступ к файлам из графического интерфейса Android Studio или через командную строку:

  • GUI — в Android Studio запустите Android Монитор устройств из меню: Инструменты/Android/Android Device Monitor . Перейдите на вкладку Проводник , затем выберите data/data//. Найдите файл, который вы ищете, и вы можете нажать и вытащить файл оттуда.
  • Командная строка — вы также можете отправить файл на устройство или вытащить файл с устройства через adb:
   adb pull remote-dir local-dir         Копировать с устройства на локальный компьютер 
adb push local -dir remote-dir

На устройстве без рутирования

Если вы не работает на эмуляторе или корневом устройстве. Из командной строки:

   adb shell 
run-as F
cd data/data /...

Теперь вы можете получить доступ к файлам на внутренней памяти устройства. Чтобы выйти из оболочки, введите exit .

  exit   

После того, как вы получите доступ к файлу базы данных SQLite на эмуляторе, корневом устройстве или через оболочку adb/запустите как [имя пакета], есть несколько вариантов для проверки схемы и вашей базы данных SQLite на устройстве.

Проверьте базу данных SQLite с помощью инструмента с графическим интерфейсом

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

Проверяйте SQLite db с помощью инструмента командной строки sqlite3

Для меня более простой вариант - использовать инструмент командной строки sqlite3 для проверки базы данных из оболочки adb -

   оболочка adb 
cd data/ data//databases/
sqlite3
.tables
. schema

В качестве альтернативы вы можете использовать sqlite3 локально, а не в оболочке, после получения файла базы данных с устройства:

   adb pull  
sqlite3

Итак, когда вы работаете с SharedPreferences или SQLite db на Android, вам часто нужно стереть данные и начать заново. Итак, вот несколько вариантов:

  • Удалить и переустановить приложение
  • Перейдите в Настройки устройства/Приложения/Найдите свое приложение и нажмите на него/ Хранение/очистка данных

Существует гораздо более простой способ помочь в процессе разработки и отладки: установить подключаемый модуль Android Studio под названием ADB Idea . Чтобы установить подключаемый модуль, перейдите в Android Studio/Preferences/Plugins , нажмите Обзор репозиториев и выполните поиск по запросу «ADB Idea». Установите и перезапустите Android Studio, и вы увидите, что опция подключаемого модуля отображается в разделе Инструменты/Android/ADB Idea . Попробуйте. Я считаю этот плагин очень полезным, когда мне нужно стереть данные приложения.

Существуют и другие варианты доступа и проверки личных файлов на устройствах Android с помощью библиотеки.

Один из вариантов - использовать библиотеку под названием Android Debug Database , и вы можете прочитать подробности из сообщения в блоге автора об этом.

Если бы вы могли любите проверять сетевые соединения в дополнение к базе данных и SharedPreferences, используйте Stetho - инструмент отладки с открытым исходным кодом, разработанный Facebook. При использовании Stetho ваше приложение должно находиться в режиме отладки, но нет необходимости в корневом доступе. Это мощный инструмент, позволяющий отлаживать приложение с помощью инструмента разработчика Chrome.

Оцените статью
clickpad.ru
Добавить комментарий