我以编程方式使用 alertBody 创建了 cksubscription,它工作正常。为了在开发环境中进行测试,我从 cloudkit 仪表板中删除了该订阅(不使用代码),并再次使用相同的代码创建了具有不同 alertBody 的 cksubscription。创建这个后,我收到了两个警报体的 2 条警报消息。我没有得到什么问题?在仪表板上,它仅显示一种订阅类型,当推送通知触发时显示 2 条消息。
有谁知道如何解决它?
我以编程方式使用 alertBody 创建了 cksubscription,它工作正常。为了在开发环境中进行测试,我从 cloudkit 仪表板中删除了该订阅(不使用代码),并再次使用相同的代码创建了具有不同 alertBody 的 cksubscription。创建这个后,我收到了两个警报体的 2 条警报消息。我没有得到什么问题?在仪表板上,它仅显示一种订阅类型,当推送通知触发时显示 2 条消息。
有谁知道如何解决它?
在仪表板中,您只会看到为您登录到仪表板的用户设置的订阅。当您删除该订阅时,您只会为该用户删除它。如果您的设备使用其他用户登录,则旧订阅仍然存在。
您可以在运行时检查可用订阅。你可以使用这样的代码:
self.database.fetchAllSubscriptionsWithCompletionHandler({subscriptions, error in
for subscriptionObject in subscriptions! {
if let subscription: CKSubscription = subscriptionObject {
self.database.deleteSubscriptionWithID(subscription.subscriptionID, completionHandler: {subscriptionId, error in
...