首页 > 解决方案 > 应用启动时获取静默通知值

问题描述

我正在尝试在 IOS 上实现 FCM 的缓存机制。我正在使用带有 CrossGeeks FirebasePushNotificationPlugin的 Xamarin 表单

推送通知服务工作正常。我正在使用如下的有效负载模式

{
    "data": {
        "message" : "my_custom_value",
        "other_key" : true,
        "body":"test"
     },
     "notification": {
       "body" : "hello",
       "title": "firebase",
       "sound": "default",
        "content_available" : true
     },
     "priority": "high",
     "condition": "'general' in topics"
}

上面的模式在 IOS 主屏幕上显示为警报的传递通知。

我编写了一个依赖服务,用于在应用程序启动时获取未删除或未打开的累积通知。依赖服务包括以下代码

await UNUserNotificationCenter.Current.GetDeliveredNotificationsAsync();

当我使用上述有效负载时,我可以获得累积的通知。但是当我使用下面的有效负载模式时,我不能。

{
    "data": {
        "message" : "my_custom_value",
        "other_key" : true,
        "body":"test"
     },
     "notification": {
        "content_available" : true
     },
     "priority": "high",
     "condition": "'general' in topics"
}

实际上,由于阻止用户的删除操作,我想为我的缓存机制的每个通知发送 2 个有效负载类型。之后,我想在我的应用程序的通知页面中显示缓存的通知,而不会丢失任何内容。

不久,我关于“我没有从UNUserNotificationCenter这种方法中获得静默有效载荷值的问题是否可能?”

或者我可以在我的应用程序终止时阻止用户从 IOS 主屏幕删除通知操作。

注意:我在 info.plist 中的最低操作系统版本是 10.0

先感谢您。

标签: iosxamarin.formsxamarin.iosfirebase-cloud-messaging

解决方案


推荐阅读