You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 7 MAUI使用Plugin.LocalNotification发送通知无响应求助

解决.NET 7 MAUI中Plugin.LocalNotification推送无反应的问题

1. 添加Android平台权限

在Platforms/Android/AndroidManifest.xml中添加必要的通知权限:

<!-- Android 13+ 必需的通知权限 -->
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<!-- 可选:用于通知振动的权限 -->
<uses-permission android:name="android.permission.VIBRATE" />

2. 运行时请求通知权限

Android 13+ 和 iOS 都要求在运行时主动请求通知权限,修改MainPage.cs添加权限请求逻辑:

using Plugin.LocalNotification;

namespace MauiApp2
{
    public partial class MainPage : ContentPage
    {
        int count = 0;

        public MainPage()
        {
            InitializeComponent();
            _ = RequestNotificationPermission();
        }

        private async Task RequestNotificationPermission()
        {
            var permissionStatus = await LocalNotificationCenter.Current.RequestNotificationPermissionAsync();
            if (permissionStatus != PermissionStatus.Granted)
            {
                await DisplayAlert("提示", "请授予通知权限以接收推送", "确定");
            }
        }

        private void CounterClicked(object sender, EventArgs e)
        {
            var request = new NotificationRequest
            {
                NotificationId = 1337,
                Title = "subscribe",
                Subtitle = "please subscribe in our plateforme",
                BadgeNumber = 42,
                Description = "lorem epsum ichlibidish seni seviurum",
                Schedule = new NotificationRequestSchedule()
                {
                    NotifyTime = DateTime.Now.AddSeconds(5),
                    NotifyRepeatInterval = TimeSpan.FromDays(1)
                },
                // Android 8.0+ 必需的通知通道配置
                Android = new Plugin.LocalNotification.AndroidOption.AndroidOptions
                {
                    ChannelId = "maui_notification_channel",
                    ChannelName = "MAUI通知通道",
                    ChannelDescription = "应用推送通知专用通道",
                    Importance = Plugin.LocalNotification.AndroidOption.NotificationImportance.High
                }
            };
            LocalNotificationCenter.Current.Show(request);
        }
    }
}

3. 检查系统通知权限设置

  • 模拟器/真机:进入系统设置→应用管理→找到你的MAUI应用→通知权限,确认已开启「允许通知」。
  • 红米12C:小米机型可能存在额外的通知拦截规则,需确保应用未被加入通知黑名单。

4. 验证通知通道配置

Android 8.0(API 26)及以上版本必须为通知指定有效通道,否则通知无法显示。确保代码中ChannelId唯一,且Importance设置为High或Default,保证通知能正常弹出。


内容的提问来源于stack exchange,提问作者Oussama hdidou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 07:15:13