我正在使用FCM服务器进行远程通知,它可以完美地与发送和接收通知配合使用。
我的问题是,当设备在后台运行时func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void),不会调用此函数。
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
我尝试过的解决方案:
userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)
当用户点击通知时调用。否则,它不会被触发。
添加"content-available": true, "priority": "high"到有效载荷。另外,我尝试了这个值"content-available": 1。
"content-available": true, "priority": "high"
"content-available": 1
这是我的功能代码:
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any],
fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { print("userInfo: \(userInfo)") completionHandler(.newData); }
"content-available": true
。 **内容可用** 将发送通知,但不会调用