iPhone Core Data应用程序将终止保存数据库所需?

时间:2009-12-14 16:04:20

标签: iphone core-data save terminate

我有一个允许您编辑某些百分比的应用程序,但是如果百分比加起来为100,它只会让您提交这些更改。但是因为Core Data模板包含应用程序中的保存代码将终止。如果用户更改了某些内容然后退出了该应用程序,则该项目当然会保存,即使它没有添加到100%。

因此我只是决定注释掉应用程序中的保存将终止。我知道另一种选择是使用另一个上下文进行编辑,然后合并更改或设置我的上下文值直到实际的保存点。但是我没有看到评论这一行有什么害处,因为当我点击保存按钮时,我在应用程序中保存了我想要的任何内容,所以我的问题是:应用程序上的保存是否会强制终止?这可能带来什么后果?重要的是要注意应用程序在评论这一行后继续正常工作(这是我的预期)。

提前谢谢。

-Oscar

2 个答案:

答案 0 :(得分:1)

您可以随时保存。

但是,您永远不会知道该应用何时终止。与更传统的平台上的应用程序(如桌面)不同,iPhoneOS会随机终止您的应用程序(从应用程序的角度来看)。您将获得的唯一警告是发送给应用代表的applicationWillTerminate消息。如果您不处理保存,那么很可能在某些时候,您的用户将丢失数据。

我认为你应该重新考虑你的设计。听起来你正在将计算放入可能(1)在代码中的其他地方处理或(2)由瞬态属性处理的托管对象中。你不应该有一个条件,在这个条件下无法保存托管对象。这样做会使您的数据模型完全依赖外部代码来实现其内部完整性。这会导致维护,可移植性和升级问题。

答案 1 :(得分:0)

它不是必须保存在应用程序上将终止。当您认为适合应用程序的上下文时,您可以保存。