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

如何在JSON中配置FCM消息优先级?及锁屏即时投递带通知音设置

FCM枚举字段配置与锁屏即时投递设置

一、枚举字段的JSON配置规则

1. message.android.priority

  • 类型:字符串
  • 有效值:小写的"normal"(默认)或"high",也支持大写的"NORMAL"/"HIGH",FCM API会自动识别,大小写不影响生效
  • 作用:控制消息的投递优先级,"high"会让消息绕过设备的省电限制,优先投递

2. message.android.notification.notification_priority

  • 类型:字符串或整数均可
  • 有效值:
    • 字符串:"PRIORITY_MIN"、"PRIORITY_LOW"、"PRIORITY_DEFAULT"、"PRIORITY_HIGH"、"PRIORITY_MAX"(必须严格匹配大小写)
    • 对应整数:-2、-1、0、1、2
  • 作用:控制通知在系统状态栏的显示优先级,数值/级别越高,通知越醒目

二、锁屏即时投递+带声音通知的配置方案

要实现屏幕关闭时立即投递并触发带声音的通知,需要同时调整以下配置:

  • 将android.priority设为"high":确保消息绕过设备休眠限制,即时投递
  • 将android.notification.notification_priority设为"PRIORITY_HIGH"(或1):提升通知的系统显示优先级,锁屏时也能弹出
  • 保留sound: "default"(或自定义音效文件名):确保通知触发系统默认声音
  • 可选添加visibility: "public":确保锁屏时通知内容完全显示(如果不需要隐藏内容的话)

调整后的代码示例

# Construct the message payload
message = {
  'message': {
      'token': app_token,
      'android': {
          'priority': 'high',  # 确保消息即时投递
          'notification': {
              'title': msg_title,
              'body' : msg_body,
              'icon' : 'ic_app_mono',
              'color': '#FF0000',
              'sound': 'default',  # 触发默认通知声音
              'notification_priority': 'PRIORITY_HIGH',  # 提升通知显示优先级
              'visibility': 'public'  # 可选:锁屏时显示完整通知内容
          }
      }
  }
}

# Use ADC to get the credentials
credentials = default()[0]

# Send the message
result = SendMessage(credentials, message)

补充说明

  • 如果你的消息是数据消息(仅包含data字段,无notification字段),还需要添加android.content_available: true,确保设备休眠时唤醒应用处理消息
  • 部分厂商的定制ROM(如小米、华为)有额外的省电策略,可能需要用户在系统设置中允许你的应用“后台弹出界面”“不受电池优化限制”才能确保100%即时投递

内容的提问来源于stack exchange,提问作者Marus Gradinaru

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 02:17:10