我正在尝试使用Xamarin.Forms为我的android应用程序实现本地通知(带有单击事件和HeadUP通知)。我已关注Microsoft documentation的“本地通知”,但我不知道如何实现。任何人都可以分享此示例。
谢谢。
答案 0 :(得分:1)
从Android official document开始,有两种设置重要性级别的方法。
第一个解决方案:(不起作用)
如果通知的优先级标记为“高”,“最大”或“全屏”,则会收到平视通知。
可能触发平视通知的条件示例包括: 该通知具有较高的优先级,并使用铃声或振动。请使用物理设备尝试以下操作:
builder.SetVibrate(new long[0]);
builder.SetPriority((int)NotificationPriority.High);
的类似讨论
不幸的是,以上解决方案不起作用。
第二个解决方案:(工作)
在Xamarin Android中正确的方法可以设置 Channel 的属性。如果频道由NotificationImportance.High
创建,则可以显示抬头。您可以参考this official sample。并且如下修改您的CreateNotificationChannel
方法:
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 name = Resources.GetString(Resource.String.channel_name);
var description = GetString(Resource.String.channel_description);
//Replace follow NotificationImportance.Default to NotificationImportance.High
var channel = new NotificationChannel(CHANNEL_ID, name, NotificationImportance.High)
{
Description = description
};
var notificationManager = (NotificationManager) GetSystemService(NotificationService);
notificationManager.CreateNotificationChannel(channel);
}