2010-03-07 38 views
0

我目前正在开发一个带有大型参考数据库的iPhone应用程序(使用由预填充的sqlite数据库支持的Core Data)。一旦应用程序正式运行并部署到客户端的iPhone上,我需要该工具来更新/插入少量数据。做这件事的最佳做法/方法是什么?发送数据更新到iPhone应用程序的最佳做法?

当更新的频率每天大约一个月左右时,可能会出现偶然性。当数据更新每隔几个月发生一次时发生的其他事件。

这样做的建议方法是什么?请注意,我不预期这些更新会有任何数据模型更改 - 这纯粹是数据的插入/更新。现在我开始研究使用推送数据通知(q:有效载荷大小限制?),应用商店更新(仅限代码/数据模型,而不是数据更新?)以及使用我的自己的临时数据服务器(应用程序连接到例行检查更新)。

任何人都可以请给我提供上面的任何指针吗?

预先感谢

回答

2

IIRC推送通知具有256个字节的最大有效载荷。足够用于通知目的,但不是更多。收到通知后,您的应用仍然需要从您自己的服务器上下载实际数据。

请注意应用程序包不能在设备上写入。因此,如果您的应用需要更新数据存储,则应在首次启动时将预填充数据库文件从应用包中复制到应用的文档目录。

应用程序商店更新肯定是可行的(特别是现在,苹果似乎已经将其审核过程最多只有几天),但请注意,应用商店更新将始终替代整个应用程序包(代码和数据) ,所以如果您的预填充参考数据库很大,那么客户每次都必须全部下载它。

+0

谢谢Ole。听起来像我需要添加应用程序功能去我自己的服务器下载数据,然后使用核心数据插入/更新到数据存储。 回复:应用商店更新,你提出一个有趣的观点。我预期的应用程序的一个功能是,客户端可以添加收藏夹/标签与预先填充的数据。您提到应用商店更新将替换整个捆绑包。因此,如果我进行应用更新,现有的预填充数据库+客户端添加的收藏夹/标签数据会被完全覆盖吗?如果是的话,有没有办法在应用商店更新中保留客户端添加的数据? – tofrizer 2010-03-08 09:47:09

+0

接受答案,我会问我的第二个问题(在我最后的评论中)作为一个单独的帖子。再次感谢Ole。 – tofrizer 2010-03-09 12:09:27

相关问题