2014-12-04 2 views
0

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

Я хотел бы создать приложение, основанное на данных, которые могут изменяться еженедельно или раз в две недели. Я хотел бы сохранить данные на устройстве, чтобы, если у пользователя нет доступа к Интернету, они все еще могут использовать это приложение. Однако, когда у них есть доступ к Интернету, я хотел бы, чтобы устройство при запуске подключилось к базе данных и сравнило сохраненные значения со значениями в базе данных. Если они разные, я бы хотел, чтобы локальные данные обновлялись. Таким образом, мне не нужно выпускать обновление каждые две недели для простых изменений числа.

Я новичок в разработке IOS и не знаю, как лучше всего подойти к этому. Являются ли определенные способы хранения данных более легко обновляемыми таким образом, чем другие? И помощь/обсуждение этой идеи будут оценены. Спасибо!

+1

Прочтите эту статью: http: //nshipster.com/nscoding/ – Jack

ответ

0

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

Если данные Json или XML, и вы должны доступ к нему более одного раза, coredata, вероятно, является хорошим выбором.

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

Если это только некоторые данные, связанные с пользователем NSUserDefaults работает нормально.

Если это конфиденциальные данные или они должны оставаться на устройстве даже после удаления приложения, брелок является местом для выбора.

+0

Хорошо спасибо. Это данные вики-видеоигры. Таким образом, статистика гонок и тому подобное. Так что не чувствительный, а не пользователь, но, возможно, потребуется получить доступ более одного раза, если я не загружу все при запуске. Спасибо за отзывы. (Извините за то, что вы новичок в этом) –

+0

в этом случае я бы сохранил его как файл в документах и ​​добавил временную метку в качестве номера версии для проверки изменений – dogsgod

+0

Это хорошая идея. Спасибо! –

Смежные вопросы