Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin.forms Xamarin forms android:在前台模式下,旧通知被新通知取代_Xamarin.forms_Push Notification_Xamarin.android - Fatal编程技术网

Xamarin.forms Xamarin forms android:在前台模式下,旧通知被新通知取代

Xamarin.forms Xamarin forms android:在前台模式下,旧通知被新通知取代,xamarin.forms,push-notification,xamarin.android,Xamarin.forms,Push Notification,Xamarin.android,我已经使用FCM在xamarin forms android项目上实现了推送通知但当收到新通知时,旧通知将被新通知替换。只有当应用程序处于前台模式时(当应用程序处于打开状态时),才会发生这种情况。在后台状态或终止状态下不会出现此类问题。在后台状态和终止状态下显示多个通知 下面是我的通知负载,其中webContentList是我的消息数据 { "to" : "dmtfiSvBBM0:APA91bFnHkamMSYgxPuiSfdvKnU8hD_mOqrWijnENNgXVSkSgo1ILH3-u

我已经使用FCM在xamarin forms android项目上实现了推送通知但当收到新通知时,旧通知将被新通知替换。只有当应用程序处于前台模式时(当应用程序处于打开状态时),才会发生这种情况。在后台状态或终止状态下不会出现此类问题。在后台状态和终止状态下显示多个通知

下面是我的通知负载,其中
webContentList
是我的消息数据

{
 "to" : "dmtfiSvBBM0:APA91bFnHkamMSYgxPuiSfdvKnU8hD_mOqrWijnENNgXVSkSgo1ILH3-uKVCU7Ez2PXXOhtDoobIyKBf5UshVfTmvjSqHgXMRTsqguKCSTjIfGnXrVP-_cNFq2sisshZO-BcfkwKTl-I",
 "collapse_key" : "type_a",
 "notification" : {
      "body" : "This is body",
     "title": "Tech Team",
     "priority":"high",
     "content_available":true
 },
 "data" : {
    "webContentList": [
        {
            "webContentDefinitionId": 818084,
            "pageTitle": "CCD Grade 3-4",
            "pageKwd": "CCD Grade 3-4",
            "pageDesc": "CCD Grade 3-4",
            "siteId": 45,
            "pageCreatedTime": 1555145959428,
            "pageUpdatedDate": 1555927274279,
            "modifier": {
                "userId": 12944,
                "applicationId": 32,
                "username": "robert.downey",
                "email": "robert@master-mail.net",
                "firstName": "Robert",
                "lastName": "Downey"
            },
            "creator": {
                "userId": 12944,
                "applicationId": 32,
                "username": "robert.downey",
                "email": "robert@master-mail.net",
                "firstName": "Robert",
                "lastName": "Downey"
            }
        }
        ]
 },
  "ttl": 3600
}
我从有效负载中删除了
collapse\u键
,但通知正在前台模式中替换


请对此问题提出解决方案?

您是否自行处理前台通知的创建? 如果是这样,一个典型的错误就是在创建本地通知时一次又一次地传递相同的id,例如

mNotificationManager.Notify(1, mBuilder.Build());
您需要为每个通知传递不同的ID

mNotificationManager.Notify(new Random().Next(),mBuilder.Build());