我已将CloudKit集成到我的iOS应用中,并且我遇到设备之间的功能不一致。
我的一位用户拥有iPod 5th Gen和iPhone 6.如果他们使用iPod,一切都按预期工作。但是,如果他们使用iPhone 6,他们只能接收数据和通知,他们无法对自己进行更改。当iPhone尝试对iCloud公共数据库进行更改时,我没有收到任何错误,并且在本地进行了更改,他们只是从未进入服务器(一切似乎都有效,但事实并非如此)。
鉴于用户可以成功使用iPod,但同样的iCloud帐户只接收iPhone上的数据,这表明这可能是权限或设置问题。
我不知道要提供什么代码,因为该应用程序在其他设备上按预期运行,但让我知道什么可以提供帮助。任何帮助将不胜感激。
答案 0 :(得分:1)
通过将我的修改操作qualityOfService属性更改为.UserInitiated来解决此问题。
在我查看了我的CKModifyRecordsOperation的完成处理程序之后,我意识到我正在保存本地功能所需的数据,无论完成处理程序是否收到错误(顺便说一下,它是否被执行)。因此,当我觉得我的操作正在运行并且没有返回任何错误时,它实际上根本就没有运行。更改qualityOfService似乎已经解决了这个问题。