Приложение iPhone Core Data прекратит сохранение базы данных требуется? - PullRequest
0 голосов
/ 14 декабря 2009

У меня есть приложение, которое позволяет вам редактировать некоторые проценты, однако оно позволит вам зафиксировать эти изменения, только если проценты добавятся до 100. Однако, поскольку шаблон базовых данных, включающий код сохранения в приложении, будет прерван. Если пользователь что-то изменил и затем вышел из приложения, элемент, конечно, будет сохранен, даже если он не увеличится до 100%.

Поэтому я просто решил закомментировать сохранение в приложении, которое прекратится. Я знаю, что другой вариант будет использовать другой контекст для редактирования, а затем объединить изменения или установить значения моего контекста до фактической точки сохранения. Однако я не вижу никакого вреда в комментировании этой строки, поскольку я сохраняю все, что хочу, в своем приложении, когда пользователь нажимает кнопку «Сохранить», поэтому мой вопрос: является ли сохранение в приложении обязательным? какие возможные последствия это может иметь? Важно отметить, что приложение продолжает нормально работать после комментирования этих строк (что я и ожидал).

Заранее спасибо.

-Oscar

Ответы [ 2 ]

1 голос
/ 14 декабря 2009

Вы можете сохранить в любое время.

Однако вы никогда не узнаете, когда приложение прекратит работу. В отличие от приложений на более традиционных платформах, например, на настольных компьютерах, iPhoneOS прервет ваше приложение (с точки зрения приложений) случайным образом. Единственное предупреждение, которое вы получите, будет сообщение applicationWillTerminate, отправленное делегату приложения. Если вы не обрабатываете сохранения, то весьма вероятно, что в какой-то момент ваши пользователи потеряют данные.

Я думаю, вы должны пересмотреть свой дизайн. Похоже, вы помещаете вычисления в управляемые объекты, которые могут (1) обрабатываться в другом месте кода или (2) обрабатываться переходными свойствами. У вас не должно быть условия, при котором управляемый объект не может быть сохранен без промедления. Это делает вашу модель данных полностью зависимой от внешнего кода для его внутренней целостности. Это вызывает проблемы с техническим обслуживанием, мобильностью и модернизацией.

0 голосов
/ 14 декабря 2009

Его сохранение в приложении не обязательно прекращается. Вы можете сохранить, когда вы считаете нужным контекст приложения.

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