使用 iCloud 在多个设备之间同步核心数据

2024-02-02

已经有最近有很多讨论 http://rms2.tumblr.com/post/46505165521/the-gathering-storm-our-travails-with-icloud-sync关于 iCloud 和 Core Data 的问题以及 Apple 的 API 目前在 iOS 5 和可能的 iOS 6 中如何被破坏。

鉴于 Apple 核心数据 API 的当前状态,是否有可能使用 iCloud 在多个设备之间可靠地同步?

如果是这样,你会怎么做?如果没有,请推荐替代方法。


This 博客文章 http://rms2.tumblr.com/post/46505165521/the-gathering-storm-our-travails-with-icloud-sync将引导您阅读一系列最近的文章,讲述开发人员尝试这种方法的艰辛。

根据我自己的理解和经验,我相信这是可行的,但不要相信你会“免费”获得任何东西。根据您的数据模型,您可能最好将整个持久存储同步为文档,而不是使用记录的核心数据/iCloud 方法。

如果您已经熟悉核心数据,那么您可能会运气更好。只要确保您考虑清楚如何处理几个重要的案例即可。

一是如果用户退出其 iCloud 帐户该怎么办。发生这种情况时,本地普遍存在的持久存储将被删除。如果用户仍有权访问其数据,则您需要管理本地存储中的副本,然后在他们重新登录时管理重新同步。

另一个问题是,默认情况下,更改的传播速度显然相当慢,因此您可能需要考虑一种替代机制(例如键值存储)来快速传播足够的信息,以避免不良的用户体验。

冲突管理可能是最具挑战性的(取决于您的模型)。虽然框架提供了一种机制来通知您冲突,但您需要自己提供解决冲突的机制,并且有报告称冲突通知可能不可靠(请参阅链接的文章),这似乎与滞后密切相关在更新中。

简而言之,如果您了解实际的支持非常简单,并且您需要非常防御性地编写代码,那么您可能有机会。那里没有任何好的食谱,所以如果你确实能做到这一点,请回来告诉我们什么有效!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 iCloud 在多个设备之间同步核心数据 的相关文章

  • IOS - 如何创建具有模糊背景的 Facebook 反应栏?

    虽然这周可能不会复制 Facebook 的某些设计 但我希望能够设计我自己的下面的反应指示器视图版本 我有三个UIImageViews 排列在与上面相同的位置 问题是 与 Facebook 不同 背景颜色可能会改变 即位于UIBlurEff
  • 高度在 IOS (iphone) 上无法正常工作

    我已经创建了this https codepen io salman15 project live DWbWpo Codepen 上的网站 在尝试使其响应所有平台时 我遇到了问题 看起来单个 div 覆盖了整个页面 仅在 IOS 上 并且并
  • 优化 - 步进可能表现奇怪:iOS/Unity

    我正在尝试将 Unity 集成到 iOS 应用程序中 我已经遵循了这个教程http www agnosticdev com blog entry swift integrating unity and vuforia ios swift p
  • 如何通过GPUImage调整图像的亮度和对比度?

    我编写了一种使用亮度因子和对比度因子过滤图像的方法 如下所示 UIImage image UIImage image withBrightness float brightness contrast float contrast GPUIm
  • 是否可以在“NSFetchRequest”中按子类排序而不添加其他属性?

    我想对结果进行分组NSFetchRequest按实体 这些实体都共享相同的抽象父级 例如 animal cat dog The NSFetchRequest has includesSubentities set TRUE and enti
  • 在 iPhone 应用程序中获取路线和路线导航

    我正在开发一款应用程序 该应用程序将重点关注在驾驶时为用户提供路线和逐段指示 他们在驾驶过程中留在应用程序中非常重要 因此我真的不想让他们离开应用程序并转到内置的地图应用程序 我最近对如何包含此功能进行了大量研究 众所周知 这并不容易 因为
  • 使用 UIControl (特别是 UIButton)时如何对目标进行排序?

    在我的应用程序中我有多个UIButtons我为此添加了目标 事实证明 首先执行最近添加的目标 然后执行其余的目标 例如 采用以下代码 button addTarget self action selector someAction forC
  • Swift:使用元组在单个 switch-case 中使用多个间隔

    有这样的代码 switch indexPath section indexPath row case 0 1 5 println in range default println not at all 问题是我可以在第二个元组值中使用多个间
  • UIView表面自定义变换/动画(如“水滴效果”)

    实施方式是什么自定义转换 动画 在视图表面 类似于所附图片 not只是视图边界 问题主要在于一般的方法是什么做到这一点 不完全是 水滴效应 但任何例子肯定会受到赞赏 我想 这是层布局 网格 的某种 算法 转换 但不确定以哪种方式 挖掘 它
  • iOS 获取特定语言的字符串的本地化版本

    我正在构建一个适用于 iOS 的应用程序 该应用程序将提供英语和法语版本 我已经阅读了一些有关国际化的教程 并且了解了它的工作原理以及我需要做什么 我遇到的问题是有一个特定的情况 我想为英语用户加载法语字符串 我知道可以为整个应用程序设置语
  • 如何在 iOS 企业帐户中创建开发人员配置文件请求?

    我们有 iOS 企业帐户 现在我们想要向我们的团队添加一名开发人员 该开发人员将创建一个开发人员配置文件 问题是新添加的开发人员在他的苹果帐户中看不到配置文件标签 任何人都知道新添加的开发人员如何创建配置文件 感谢您 Steps 您可以通过
  • 如何更改 iOS 5 中 UITabBarItem 中文本的颜色

    iOS 5 中有更多外观控制 我们如何更改 UITabBarItem 文本颜色 从默认白色变为其他颜色 编辑 工作解决方案 UITabBarItem appearance setTitleTextAttributes NSDictionar
  • 将 React Native 应用程序嵌入到现有的 ios/android 应用程序中

    我需要知道是否可以在现有的 ios android 应用程序中 嵌入 一个 React Native 应用程序 而不共享 React Native 应用程序代码 我们目前有一个 React Native 应用程序 它使用一些插件依赖项 并被
  • iOS 9.3.2 破坏 MPMusicPlayerController

    我正在尝试将 Apple Music 集成到我的应用程序中 直到今天早上我才设法使其完美运行 更新到 iOS 9 3 2 后 一切都不一样了 权限系统的工作原理相同 SK云服务控制器 https developer apple com li
  • 如何在iOS中获得旋转UIView的完美X,Y位置

    我正在使用 CABasicanimation 来旋转 UIView 我正在使用这段代码 CABasicAnimation rotationAnimation CABasicAnimation animationWithKeyPath tra
  • uiscrollview 放大和缩小无法正常工作

    我有一个 uiscrollview 里面有一个 uiimageview 我希望用户能够放大图像 因为它是一个大图像 滚动视图只需要垂直滚动而不是水平滚动 在添加缩放效果之前 我有以下代码并且它按我想要的方式工作 void viewDidLo
  • 如何处理 iPhone 6S Plus 字体大小?

    与其他屏幕尺寸相比 iPhone 6S Plus 的屏幕非常大 我似乎无法找到一种在不以编程方式调整大小的情况下处理标签字体大小的好方法 如何调整标签的字体大小 使其在 iPhone 5 上看起来更小 在 iPhone 6 Plus 上看起
  • 带有 Retina-Tiles 的 MKTileOverlay

    我在 MKMapKit 中加载 512x512px 图块时遇到问题 服务器提供 512x512 jpeg 图块 我在 MKMapView 中找不到自定义视网膜图块的任何解决方案或示例实现 我做什么 当我将它们加载到 MKMapView 中时
  • 在 iOS 中,如何以编程方式填写 pdf 表单字段?

    我需要获取一个现有的 pdf 文件 并以编程方式填写带有文本的表单字段列表 然后保存 pdf 而不将其显示给用户 例如 如果 pdf 文件包含名为 LastName 和 FirstName 的字段 我想将 FirstName 的值设置为 L
  • 如何从TableViewCell上的自定义CollectionViewCell推送VC?

    我有一个tableView和细胞 在细胞上我有一个collectionView并在其上显示一些内容 我想发送一个有关选择的链接indexPath 我想从自定义中推送 呈现我的视图CollectionViewCell这是在TableViewC

随机推荐

  • Gitlab CI 变量返回空字符串?

    自从我的一个项目在 Gitlab CI 上构建开始失败以来已经过去 2 天了 主要错误是E MISSING APP KEY当我通过回显检查另一个变量时 HOST and PORT从我的 gitlab ci yml配置 像这样 tests s
  • 在显示模块化模式对象上创建继承

    我正在尝试在对象之间创建某种继承 var foo function function doFooStuff console log arguments callee name return doFooStuff doFooStuff var
  • MapView 谷歌地图 NullPointerException?

    我正在尝试创建一个如何获得使用地图视图 我创建了一个 Fragment 和一个 XML 来使用它 问题是当我尝试打开 MapView 时抛出空指针异常但我不明白为什么 我该如何解决呢 XML
  • 未收到额外意向

    我正在显示来自附加到我的项目的库的通知 当单击该通知时 该通知会转到一个活动 ReceivingActivity 单击通知后活动将打开 但不会收到附加的附加内容 通知触发代码 我调用sendNotification当我收到 gcm 消息并且
  • 如何将 javax.activation.DataSource 添加到 App Engine 开发服务器?

    tl dr 我如何添加javax activation DataSource依赖于通过 App Engine Maven 插件运行的服务器 我正在使用App Engine Maven 插件 https cloud google com ap
  • Google OAuth 2.0 离线访问

    即使用户不在场 我的应用程序也需要访问用户的数据 所以我的授权码请求包括access type offline这意味着如果这是用户第一次验证我的应用程序 我将取回刷新令牌 我保存刷新令牌并稍后使用它 一切都按预期进行并且运行得很好 但令我困
  • java.lang.IllegalStateException:已为此响应调用 getOutputStream() [重复]

    这个问题在这里已经有答案了 当用户单击某个链接时 使用 Web 服务将文档从远程 ECM 系统传输到用户计算机 所以我创建了 servlet 并从查询字符串中获取参数并从 URL 中获取参数 根据参数属性 调用多个与 Web 服务相关的方法
  • 在 Ruby on Rails 中使用随机字符串作为 id?

    我想创建一个类似于的网络应用程序http www pastebin com http www pastebin com 在 Ruby on Rails 中 astebin com 使用随机字符串来标识项目 Ruby on Rails 使用自
  • 我如何将泛型类作为参数传递给 Intent 构造函数

    我的 Android 应用程序中有这个通用活动 public class NavegadorActivity
  • Xampp - Ubuntu - 无法访问 lampp/htdocs 中的我的项目

    我已经将 xampp 安装到 Ubuntu 12 04 我已将我的项目放在文件夹 opt lampp htdocs project is here 中 当我在浏览器中输入内容时localhost soap php soap php 位于我的
  • R:Regex_Join/Fuzzy_Join - 以不同的词序连接不精确的字符串

    df1 df2 df3 library dplyr library fuzzyjoin df1 lt tibble a c Apple Pear Orange Sock Shoe Hat Cat Mouse Dog df2 lt tibbl
  • 获取最近周五日期的SQL

    我正在尝试获取 SQL Server 2008 中最近的星期五 我有这个 它获取一周的开始 星期一 然后减去 3 天以获得星期五 declare recentFriday datetime DATEADD ww DATEDIFF dd 0
  • 为什么我无法将间隔解析为 JPA 中的参数?

    我正在尝试选择时间戳间隔 Query value SELECT timestamp as time start timestamp interval 1 as time end FROM timestamp table nativeQuer
  • 如何在 Vue.js 2 中搜索多个字段

    我正在尝试搜索或过滤 3 个字段名字 姓氏 and email在我的 Vue js 2 应用程序中 据我了解 与 Vue 1 不同 Vue 2 没有内置的过滤器方法 因此我创建了一种自定义方法 该方法只能过滤一个字段 如何将其扩展到多个领域
  • CSS 转换后无法点击按钮

    我正在尝试制作一个带有立方体的 html 页面 所述立方体的每个面都有按钮 在默认面上 所有按钮都可以正常工作 但是 一旦我旋转立方体 新面就会失去所有交互性 HTML
  • 如何找到列表的众数?

    scala 集合中是否有一个函数可以查找列表中某个值的最大出现次数 假设我有一个清单 L List A B B E B E B B C E B output B 我可以编写一个模块来计算这个 但我希望已经有一个 scala 方式 或 sca
  • pytest中首先执行哪个文件?

    正在浏览一些有关的教程pytest 我了解到 python m pytest 该命令执行所有以前缀开头的文件test 以及哪些文件位于同一目录中的函数 但我的问题是 如果文件是 首先执行哪个文件test app id py test sum
  • 为什么 https 下载会暂停并显示 PAUSED_WAITING_TO_RETRY?

    我正在使用下载管理器 https developer android com reference android app DownloadManager html STATUS PAUSEDAndroid 中通过 https URL 下载文
  • 如何使 Tkinter 按钮命令起作用

    我有一个带有按钮的类 它在构建 gui 时自动运行命令 我不希望它这样做 但之后就不再工作了 我究竟做错了什么 内置命令 例如 endcommand 可以正常工作 相关摘录 忽略一开始的缩进问题 class GuiPart object d
  • 使用 iCloud 在多个设备之间同步核心数据

    已经有最近有很多讨论 http rms2 tumblr com post 46505165521 the gathering storm our travails with icloud sync关于 iCloud 和 Core Data