Firebase Cloud Messaging(FCM)通知在小米9SE等设备无提示音问题咨询
问题根因说明
这个问题不是小米设备没有默认提示音,核心是MIUI定制系统的通知管控逻辑和Android通知渠道适配问题,常见原因如下:
- MIUI默认对第三方应用的通知权限限制严格:如果你的应用没有主动申请通知权限、或者用户没有手动开启应用的通知声音权限,系统会默认将FCM推送的通知静默处理,不触发提示音。
- 缺少Android通知渠道适配:Android 8.0及以上系统要求所有通知必须绑定对应通知渠道,你当前发送FCM的参数中没有携带
android_channel_id字段,MIUI会将这类未指定渠道的通知分配到默认的静默通知类,不会触发声音。 - 设备全局配置异常:可能是小米设备开启了勿扰模式、静音模式,或者通知音量被调到最低,也可能是应用的后台活动/自启动权限被关闭,进程被冻结后收到的FCM通知不会触发提示音。
修复方案
- 先校验设备端权限:打开小米设备的「设置→通知与控制中心→通知管理」,找到你的应用,确认总通知权限、对应通知类别的声音权限、震动权限都处于开启状态,同时确认设备未开启勿扰/静音模式,通知音量正常。
- 补充通知渠道适配:首先在Android客户端代码中创建一个合法的通知渠道,创建时明确指定渠道的提示音、震动规则、重要等级;之后在你发送FCM的
notification结构体中新增android_channel_id字段,值和你客户端创建的渠道ID完全一致即可。 - 自定义提示音(可选):如果默认提示音适配后仍有问题,可以将自定义提示音文件放到客户端
res/raw目录下,发送通知时将sound字段的值修改为对应的音频文件名(不带后缀),即可触发自定义提示音,不需要依赖系统默认音频。 - 适配MIUI后台规则:如果后台杀进程后收通知没有声音,需要引导用户在小米权限管理中给应用开启自启动权限、后台活动权限,避免进程被冻结后FCM通知被静默。
内容的提问来源于stack exchange,提问作者SlimLamie
相关产品推荐
相关产品推荐

