CloudKit:当应用程序暂停时,CKOperations不会运行

时间:2016-03-08 04:41:26

标签: nsoperation cloudkit cksubscription cknotification ckoperation

我正在收听来自CloudKit公共数据库的CKSubscriptions的远程通知。我想处理我在应用程序暂停时收到通知的情况...我通过使用Xcode运行应用程序在我的设备上模拟这个"等待可执行文件启动"选项。我注意到application:didReceiveRemoteNotification:fetchCompletionHandler委托方法被正确调用,我在此之后排队CKFetchNotificationChangesOperation操作,但操作永远不会运行。我没有获得任何notificationChangedBlockfetchNotificationChangesCompletionBlock回调。如果应用程序在前台运行并且有通知,则同样可以正常工作。

我已经尝试将CKOperation和操作队列的QoS设置为NSQualityOfServiceUserInteractive,但这似乎没有帮助。

我也在WiFi上尝试这个,iPhone以100%的费用插入我的电脑。

为了让CKOperations在后台运行,还有什么我需要研究的吗?

1 个答案:

答案 0 :(得分:0)

我猜你过早地调用了fetch完成处理程序暂停了app。您需要在所有操作结束时调用它。