【问题标题】:Retro-fitting my app for iCloud为 iCloud 改造我的应用程序
【发布时间】:2011-12-11 00:58:04
【问题描述】:

几天来,我一直在为为 iCloud 改造我的应用感到困惑,希望有人能提供帮助。在解决了代码签名问题后,我不确定我是否了解合并 iCloud 的模型。我会告诉你我首先要解决的问题,因为我非常相信在让人们尝试修复我的工作方式之前告诉他们我正在尝试做什么:-)

我的应用工作流程

  1. 用户浏览商店,其中列出了他们可以下载的一系列培训计划
  2. 用户选择一个计划并下载它
  3. 我根据他们的需求从我们的网络服务器中提取培训计划
  4. 我将他们下载的训练计划的文件名添加到他们拥有的计划列表中
  5. 用户打开培训计划并查看日常安排

我希望用户能够在他们的 iPhone 上执行此操作,然后打开他们的 iPad 并查看那里同步的完全相同的训练计划。

我的问题 我目前将文件保存到 Documents 目录,效果很好。我如何对其进行改造以与 iCloud 一起使用,以便未启用 iCloud 的人可以继续使用该应用程序,但那些确实获得额外好处的人?

我的理解 我很困惑我是否仍然需要保存到 Documents 文件夹,然后将副本保存到 iCloud 文件夹,或者我是否从现在开始写入 iCloud 文件夹。

如果是前者,我相信我也只需将 Documents 文件夹文件的副本写入 iCloud 区域以将其向上推送,但是如何检测 iCloud 文件夹中的新文件并将其复制回我的 Documents 文件夹?

如果是后者,文件应该存在吧?

我希望是后者,并且它仍然支持未打开 iCloud 的设备...

感谢任何帮助澄清。

亚当

【问题讨论】:

    标签: iphone ios5 icloud icloud-api


    【解决方案1】:

    iCloud API 有很好的文档记录,并且有一章专门介绍了您所追求的内容:

    管理文档的生命周期

    文档会经历一个典型的生命周期。基于文档的 应用程序负责管理其进度 循环。从以下列表中可以看出,其中大多数 生命周期事件由用户发起:

    1. 用户首先创建一个文档。
    2. 用户打开现有文档,应用程序将其显示在文档的视图中。
    3. 用户编辑文档。用户可能会要求将文档放入 iCloud 存储中,也可能会要求从 iCloud 存储中删除文档。
    4. 在编辑、保存或其他操作期间,可能会发生错误或冲突;应用程序应该了解这些错误和冲突,并尝试处理它们或通知用户。
    5. 用户关闭选定的文档。用户删除现有文档。以下部分讨论了基于文档的应用程序必须为这些生命周期操作完成的过程。

    本质上,您的应用程序负责确定 iCloud 是否可供特定用户使用,然后确认该用户希望将其数据存储在云中。根据该选择,您需要确定如何将其现有数据从文档目录移动到云 URL。

    在设置为使用 iCloud 存储的其他设备上,您可以选择通过元数据查询来发现可用的文档。

    http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/ManageDocumentLifeCycle/ManageDocumentLifeCycle.html#//apple_ref/doc/uid/TP40011149-CH4-SW1

    【讨论】:

    • 感谢 Rog - 我以为我已经阅读了 iCloud 上的所有文档,但没有专门看到那篇文章。它在流量方面回答了一些问题。如果 Apple 能够采用所有这些精确的代码 sn-ps 并发布将它们捆绑在一起的示例代码,那就太好了。我遇到了 Recipes 和 DocInteraction,但既没有真正做到这一切,也没有遵循他们自己的建议来询问用户是否要配置 iCloud 或将其用于此应用程序。
    【解决方案2】:

    如果您正在寻找实现 iCloud 的非常简单的示例,请查看:

    iCloud basics and code sample

    这为您提供了一个具体示例,说明如何实现 Rog 在上面的帖子中引用的一些阶段。希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-16
      • 1970-01-01
      • 2012-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-10
      • 2015-11-16
      相关资源
      最近更新 更多