我有一个使用 Core Data 和 iCloud 同步的应用程序。它在 iOS 7 中运行良好。
自从在 XCode 6 中运行它以来,即使在 iOS 7 设备上,我也遇到了一些问题。这是我的测试:
- 在 iOS 7 设备上:从应用程序商店下载当前的实时应用程序
- 从 iCloud 同步数据
- 构建并运行新版本的应用程序
- 持久存储发生变化,原始数据不再可用
以下是我的配置文件和 xcode 设置的屏幕截图:
我还尝试过以下权利:
- Just
com.apple.developer.icloud-container-identifiers
-
com.apple.developer.ubiquity-container-identifiers
这是我以前的情况。当我在适当的位置运行测试时,数据第一次存在,但第二次运行时不存在。没有关于商店变更的事件,但它说Using local storage: 1
在第一次和第二次运行时
- 以上两者皆有。得到与 #2 相同的结果
根据权利的屏幕截图,您似乎同时拥有旧的(普遍存在的容器)和新的(iCloud 容器)相关权利。我发现并看到了相关报道,当新旧权利同时存在时会出现问题。
对于我的应用程序,我只保留了旧的权利,并删除了 XCode 6 将尝试添加的两个新权利,以修复它认为 iCloud 中存在的问题。我删除的两个键是:
- com.apple.developer.icloud-container-identifiers
- com.apple.developer.icloud-services
我只保留了原始密钥(com.apple.developer.ubiquity-container-identifiers)并且没有更改它的值。这样,当使用 XCode 6 GM 构建时,该应用程序仍然可以在 iOS 7 中运行,并且可以像以前一样访问所有数据。在 iOS 8 中它也可以工作,但似乎需要用户将其帐户更新到 iCloud Drive。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)