如何将plist存储在iPhone&文件目录中同步存储iPad适用于通用应用?

时间:2012-05-27 11:01:57

标签: iphone ipad plist icloud ios-universal-app

我有一个设置,其中我有一个plist文件,我需要在通用应用程序的设备之间保持同步。目前,plist文件存储在文档目录中。

我一直在网上寻找保持文件同步的方法,很多解决方案似乎都基于Core Data。我不确定它是否可行,但有没有办法可以在不使用Core data的情况下同步这个文件?如果是这样,请有人可以就如何解决问题提出建议或指导我指出一些可以提供帮助的材料吗?

更具体地说,我需要一种方法来确保所使用的设备具有最新的plist文件副本。例如,如果我在早餐时在iPad上编辑它,那么在午餐时间我将应用程序加载到我的iPhone上我应该看到通过我的iPad在早餐时间进行的编辑。

2 个答案:

答案 0 :(得分:0)

如果您在设置中启用了iCloud Backup,iCloud会自动备份设备上所有应用(或选择性)的所有文档目录。

但上述事情发生在一天我想。为了使它能够实时工作,您必须使用iCloud API。

希望这有帮助。

答案 1 :(得分:0)

AFAIK您需要为iPhone / iPad应用程序提供服务器API以发出POST请求。您可以POST整个文件或使用包含plist文件中实际数据的body(JSON / XML)创建POST请求。您必须在服务器上维护ETag / Versioning信息。要进行同步工作,您需要在服务器上唯一标识每个用户并存储他的plist信息。

在每个应用程序启动期间的iPhone / iPad应用程序中,通过发出HTTP请求检查资源ETag(如果文件已上载)或版本(如果plist文件内容以XML / JSON格式发布)。您还可以在应用程序中开发调度程序功能,以获得更高的精度。如果更新,请下载并保存新信息/ plist文件。在应用程序NSUserDefaults中保留ETag / version的条目,并在此过程中更新它。

友好建议:避免将任何可下载的数据/设置存储在 Application_Home / Documents 目录中,因为应用可能会被拒绝。请阅读Apple的开发人员门户网站上的post及相关文档。

这只是初步想法,即兴创作和优化这是为了让你弄清楚...... :)我希望这有帮助!

干杯!!
阿玛尔。