gpt4 book ai didi

ios - 私有(private)数据库中的 CloudKit 订阅

转载 作者:行者123 更新时间:2023-11-29 02:01:27 25 4
gpt4 key购买 nike

我有一个应用程序,我想为其添加使用 CloudKit 将数据备份到 iCloud 的功能。“备份”部分似乎工作正常(我的记录位于私有(private)数据库中,因为它们是……嗯,私有(private)的)。

现在我想使用 CKSubscriptions 使我的所有设备与相同的数据保持同步。我尝试实现一个 CKSubscription 来监控基于查询(而不是基于区域)的记录创建/更新/删除。

func subscribe() {

let options = CKSubscriptionOptions.FiresOnRecordCreation |
CKSubscriptionOptions.FiresOnRecordDeletion |
CKSubscriptionOptions.FiresOnRecordUpdate


let predicate = NSPredicate(value: true) // get all the records for a given type
let subscription = CKSubscription(recordType: "Stocks",
predicate: predicate, subscriptionID: subscriptionID,
options: options)

subscription.notificationInfo = CKNotificationInfo()
subscription.notificationInfo.alertBody = ""

db.saveSubscription(subscription, completionHandler: {
subscription, error in
if (error != nil) {
println("error subscribing: \(error)")
} else {
println("subscribed!")
}
})
}

到目前为止,我还无法向我的设备触发通知。

我知道您可以基于区域创建订阅。区域位于私有(private)数据库中,因此我认为 CKSubscriptions 可以在私有(private)数据库中工作。但我不想实现区域(否则我不需要)。

问题:基于查询的私有(private)数据库中的 CKSubscriptions 是否存在问题?

最佳答案

这应该有效。私有(private)数据库支持非区域订阅(基于查询的订阅)。您是否在 AppDelegate 中添加了接收通知的代码?

关于ios - 私有(private)数据库中的 CloudKit 订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30329315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com