iOS 未收到来自 CloudKit 的推送通知

iOS Not receiving Push Notification from CloudKit

我正在尝试为 CloudKit 记录设置订阅,订阅创建成功,我可以使用 CKFetchSubscriptionsOperation 成功检索它。但是函数 application(_:didReceiveRemoteNotification:) 没有被调用... (我正在仪表板中手动更改记录)

订阅是这样设置的:

let database = CKContainer.default().privateCloudDatabase
let subscription = CKSubscription(recordType: "Device", predicate: NSPredicate(format: "TRUEPREDICATE"), options: .firesOnRecordUpdate)

let notificationInfo = CKNotificationInfo()
notificationInfo.alertLocalizationKey = "DEVICE_UPDATED"
notificationInfo.alertBody = "Device updated in database"

subscription.notificationInfo = notificationInfo

database.save(subscription) { subscription, error in
    if error != nil {
        print(error?.localizedDescription as Any)
    } else {
        print(subscription)
    }
}

通知注册为:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {        
    let notificationSettings = UIUserNotificationSettings(types: [.alert, .badge], categories: nil)
    application.registerUserNotificationSettings(notificationSettings)
    application.registerForRemoteNotifications()

    return true
}

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) {
    print(userInfo)
}

好的,我必须启用推送通知并生成 "Apple Push Notification service SSL Certificate" 并将其附加到我在 Apple Developer Provisioning Profiles 页面上的应用程序