在我的應用程序中,我有一個公共的CloudKit數據庫。我將它用於遠程訂閱。如何在遠程通知的alertBody中顯示CKRecord中的數據?
我在一個CloudKit儀表盤創建一個GlobalNotification記錄,創造了一個類型String
的content
場此記錄在我的AppDelegate實現以下方法進行通知的工作:
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
let subscription = CKQuerySubscription(recordType: "GlobalNotification", predicate: NSPredicate(format: "TRUEPREDICATE"), options: .firesOnRecordCreation)
let info = CKNotificationInfo()
info.alertBody = "Some Text" // here i want to show content String data of a CKRecord which fired a notification
info.shouldBadge = true
info.soundName = "default"
subscription.notificationInfo = info
CKContainer.default().publicCloudDatabase.save(subscription, completionHandler: { subscription, error in
if error == nil {
// Subscription saved successfully
} else {
// An error occurred
}
})
}
之後,我創建新GlobalNotification
記錄在cloudKit儀表盤,並添加在content
領域的一些「CloudKit內容文本」在一個CloudKit儀表板這個紀錄。 當通知在我的設備上觸發時,我在alertBody中看到「某些文本」文本,但我希望看到「CloudKit內容文本」。
我想這個通知顯示來自GlobalNotification記錄的content
領域採取的字符串。我應該如何改變我的代碼來實現這一目標?
我讀過有關desiredKeys並嘗試添加info.desiredKeys = [「內容」],但它並沒有幫助。我也google了,但還沒有找到解決方案。