Heads Up通知和徽章在某些Android设备中没有显示?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Heads Up通知和徽章在某些Android设备中没有显示?相关的知识,希望对你有一定的参考价值。

如何在xamarin表单android中显示组合通知和徽章,我正在使用firebase推送通知。它显示了一些设备(如Redmi 6 pro等)的抬头通知和徽章计数...,我已尝试此链接实现推送通知: - https://github.com/CrossGeeks/FirebasePushNotificationPlugin。我的json有效载荷是这样的。

{
"to":"push-token",
"priority": "high",
"notification": {
        "title": "Test",
        "body": "Mary sent you a message!",
        "sound": "default",
        "icon": "youriconname"
                }
 }

当应用程序处于被杀死状态且应用程序处于后台时,它在ios中正常工作。并且在应用程序打开时无法获取。

怎么做,请帮帮我...

答案

我想原因是你没有在你的活动中定义通知渠道。

MainActivity.cs中您可以在onCreate方法中调用此方法:

void CreateNotificationChannel()
    {
        if (Build.VERSION.SdkInt < BuildVersionCodes.O)
        {
            // Notification channels are new in API 26 (and not a part of the
            // support library). There is no need to create a notification 
            // channel on older versions of Android.
            return;
        }

        var channel = new NotificationChannel(CHANNEL_ID, "FCM Notifications", NotificationImportance.Default)
                      {
                          Description = "**Description**"
                      };

        var notificationManager = (NotificationManager) GetSystemService(NotificationService);
        notificationManager.CreateNotificationChannel(channel);
    }

哪里

    internal static readonly string CHANNEL_ID = "my_notification_channel";
    internal static readonly int NOTIFICATION_ID = 100; 

分别是通道ID和通知ID的定义。

在加载XF后的MainActivity的OnCreate中调用:

LoadApplication(new App());
CreateNotificationChannel();

祝好运

在查询时还原

以上是关于Heads Up通知和徽章在某些Android设备中没有显示?的主要内容,如果未能解决你的问题,请参考以下文章

如何在后台的android应用程序图标上计算推送通知消息徽章

如何在 android 和 ios 收到的推送通知上设置徽章?

iOS 仅将某些推送通知过滤为徽章

Android 通知图标在某些设备上为空白

Android 操作项上的通知徽章

是否可以从应用程序代码中显示 Android 中的通知徽章?