Предварительно загруженная база данных на iPhone? - PullRequest
2 голосов
/ 07 июня 2010

Я разрабатываю приложение, предназначенное только для чтения. Данные имеют отношения, поэтому я не могу просто использовать plist или что-то подобное.

Вопросы:

  • Должен ли я использовать базовые данные для такого требования?
  • Если да, то как мне ввести данные, а затем выпустить приложение с этими данными?
  • Как бы я сделал так, чтобы приложению не нужно было повторно заполнять БД при каждой загрузке?
  • Есть ли способ создать модель базовых данных, используя команды sql с sqlite (т.е. вставить в и т. Д.)?

Ответы [ 3 ]

4 голосов
/ 07 июня 2010

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

  1. Создайте модель в своем приложении для iOS.
  2. Создание и заполнение базы данных в приложении командной строки Mac OSX
  3. Скопируйте файл sqlite в приложение iOS и свяжите его с некоторым кодом

Работачерез эти два учебника, построчно, и впоследствии у вас будет достаточно хорошее понимание (и пример кода), чтобы выполнить эту задачу в вашем собственном приложении.

1 голос
/ 07 июня 2010

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

И все готово.

1 голос
/ 07 июня 2010

В моем коротком опыте работы с iPhone у вас есть два варианта.

  1. Напишите функцию импорта данных и запустите ее при первом запуске приложения.
  2. Используйте решение 1, носоздайте исходный файл sqllite в симуляторе, а затем при первом запуске приложения скопируйте его в каталог документов приложения.

Исходя из прошлого опыта, вариант 2 намного быстрее для пользователя и является предпочтительным решением..

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