Как обновить предварительно заполненную базу данных Core Data (SQLITE3) в магазине приложений - PullRequest
0 голосов
/ 09 июня 2011

У меня есть приложение, которое завершено, за исключением проблемы, которую я пытаюсь исправить в этом вопросе.Я уже спрашивал об этом раньше, но, думаю, задал неправильный вопрос, поэтому я решил по-новому.Я прошу прощения за то, что начал этот шаг: обновить SQLITE3 (Базовые данные) на устройстве и магазине приложений и прошу еще раз, но я в отчаянии.

Опять же, я не спрашиваю о записи вбазы данных, но обновите всю предварительно заполненную базу данных во время сборки.

Вот последовательность:

  1. Я запускаю приложение в симуляторе,БД находится в каталоге документов

  2. Введите магический пароль (который не будет доступен в коде магазина приложений)

    a.Приложение удаляет все записи в БД

    b.Прочитать новые / обновленные данные из файла .txt и заполнить базу данных

  3. Продолжить или перезапустить приложение в симуляторе, БД обновится новыми / обновленными данными

  4. Подключите мое тестовое устройство с уже установленным приложением и запустите сборку

    a.Все изменения на основе кода отражаются и работают как в симуляторе

    b.БД не обновляется и по-прежнему показывает «старые» данные, обновления (2b) не установлены

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

Я где-то читал, что данные в каталоге документов хранятся при сборке, это правда?

Полагаю, один из сценариев состоит в добавлении файлов .txt в сборку и обновлении БД в приложении при поиске нового файла .txt.

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

==== решено ====

После долгих испытаний я решил переехатьв TXT-файлах в комплекте и выполняйте обновление в телефоне, а не перемещая базу данных sqlite3.

1 Ответ

1 голос
/ 09 июня 2011

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

...