首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我的应用程序处于后台时,我如何将项目与云同步?

当我的应用程序处于后台时,我如何将项目与云同步?
EN

Stack Overflow用户
提问于 2011-11-07 09:18:51
回答 1查看 721关注 0票数 0

在我的iPad应用程序中,用户可以在线或离线输入数据,将数据存储在SQLite中,当用户联机时,他按下一个“同步”按钮,然后将数据同步到云端。

如果用户脱机输入数据,则数据将在本地SQLite DB中持续存在。如果数据还没有同步,我会设置一个警徽,以记录挂起同步的数量。

当用户启动他的iPad时,他应该在启动时得到一些警告,上面写着“有5条记录等待同步。”然后所有挂起的记录将同步,而不打开我的应用程序。

有没有人遇到过类似的风景?有人知道我该怎么做吗?

EN

回答 1

Stack Overflow用户

发布于 2011-11-07 09:38:36

在iOS 5.0之前,当应用程序没有运行时,不可能将数据与应用程序同步。然而,有一些情况下,应用程序可以完成下载时,应用程序被终止,但这一背景处理是相当有限的。

现在,如果您想要同步到云端,并且在另一个iOS设备或Mac应用程序上拥有相同的数据,那么我想iCloud可能正是您所要寻找的。

因此,使用iCloud的可能场景如下所示:

  1. 您已经在两个iCloud上安装了启用iCloud的应用程序
  2. 在这两个iPads上,您都是使用iCloud帐户登录的(这必须匹配,因为iCloud绑定到给定的Apple
  3. 当您的应用程序在iPad1上存储一些数据时,它将自动同步到云端
  4. 同时,当您的应用程序尚未启动时,这些数据将被下载到iPad2 (必须有互联网连接)。这只有在iCloud中才有可能。
  5. 当您现在在iPad2上启动应用程序时(即使它现在离线),您将在您的应用程序中获得可用的当前数据。

但是,如果您正在运行自己的服务器后端,并且可能需要对服务器上的数据进行更多的控制,那么iCloud可能(还)不适合您的需要。您可能需要查看iCloud:用于开发人员的iCloud (需要Apple帐户)的文档或示例代码。

如果选择不使用iCloud,则目前无法在应用程序未运行时同步数据。

编辑:--没有iCloud的场景可能如下所示:

  1. 脱机时在iPad1上输入数据,并将警徽设置为未同步项的数量。
  2. 稍后,您有互联网连接,所以您启动应用程序和项目可以同步到您的服务器。
  3. 服务器存储新到达的条目,现在可以向应用程序发送一个推送通知,应用程序安装在iPad2上,告诉用户服务器上有n新条目。
    • 从该通知,用户现在可以决定打开应用程序,然后新项目可以下载到iPad2
    • 如果用户拒绝通知,则在下次启动应用程序之前不会下载任何数据。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8034590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档