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

如何通过FCM在APNS JSON输出中实现time-sensitive标记?

结论

二者完全不等价,属于两个独立的配置维度,不存在官方定义的对应关系,不能通过设置FCM high priority实现time-sensitive通知效果。


两者的核心差异
  • FCM消息优先级是投递链路层面的配置
    仅作用于FCM服务端到用户设备的消息下发阶段:

    • 设为high时,FCM会尝试立即唤醒设备投递消息,即使设备处于低功耗Doze模式也会优先建立链路推送,允许消息触发后台唤醒执行推送扩展逻辑
    • 设为normal时,消息会被合并批量延迟投递,不会主动唤醒低功耗设备,用于降低设备功耗
      该配置不会对iOS系统收到消息后的通知展示规则产生任何影响。
  • interruption-level是iOS系统展示层面的配置
    仅在消息已经成功投递到设备、系统准备弹出通知时生效,和消息投递链路的优先级没有关联:

    • time-sensitive是iOS通知中断级别的最高档位之一,可以突破专注模式、静音开关的屏蔽,强制亮屏、播放提示音,还会在通知中心置顶1小时,该能力需要用户主动为App开启「时效性通知」权限才能生效
    • 该字段属于APNs payload的标准配置项,和FCM的消息优先级完全独立。

FCM发送time-sensitive通知的实现方式

调用FCM HTTP v1接口发消息时,在apns配置块下的aps节点中添加对应字段即可,示例payload结构:

{
  "message": {
    "token": "目标设备注册的FCM推送token",
    "notification": {
      "title": "通知标题",
      "body": "通知内容"
    },
    "apns": {
      "headers": {
        "apns-priority": "10"
      },
      "payload": {
        "aps": {
          "interruption-level": "time-sensitive"
        }
      }
    }
  }
}

注意:如果用户未给App开启时效性通知权限,即使payload携带了time-sensitive配置,系统也会自动降级为默认通知级别,无法突破专注模式限制。


内容的提问来源于stack exchange,提问作者Johannes Gehrs

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 18:36:23