通知下发策略
随着厂商服务器对 厂商限额及 QPS 限制 的逐步收紧,推送的抵达率和下发速度也受到相应的影响。为了更好地提升抵达率和下发速度,极光推送提供通知下发策略功能,您可以在推送时自定义不同通道的通知下发策略,详情参考下文。
通道说明
通知下发策略仅对 Android 平台集成了厂商通道的设备有效,集成厂商通道参考 厂商通道 SDK 集成指南。
| 通道 | 描述 | 支持手机类型 |
|---|---|---|
| 极光通道 | 极光通道是自建通道,需要依赖长连接才能收到推送,设备离线时消息不会下发。 | 所有可以成功注册极光通道的机型。 |
| 厂商通道 | 小米、华为、OPPO、vivo、魅族、荣耀、鸿蒙、谷歌、蔚来手机等。 |
使用说明
服务端使用
下发时在 options 字段下配置 third_party_channel 字段,并在对应的厂商 key 下配置策略参数即可按照策略进行推送。
options.third_party_channel: key 只支持 xiaomi、huawei、honor、meizu、oppo、vivo、fcm 、nio、asus、hmos类型用户。 key 可以为上述 10 个类型中的其中一个或者多个同时存在,未传递的 key 其对应的厂商下发走默认下发逻辑。
特别说明1:如果指定 fcm 类型的key,允许传递策略字段有distribution、distribution_fcm,「distribution」字段针对是纯Google系统设备(设备仅能获取到fcm token),「distribution_fcm」字段针对是 Google + 国内厂商组合系统(设备既可以获取到fcm token,也能获取到国内Android厂商token);且指定策略对通知消息(notification)和自定义消息(message)均生效。 特别说明2:如果指定 hmos 类型的key,允许传递策略字段仅有distribution,「distribution」字段取值范围如下说明;且 distribution 字段对鸿蒙平台通知消息(notification)和自定义消息(message)均生效;不指定消息下发策略时,默认策略为first_ospush。
默认下发逻辑
- 免费用户:distribution 默认值为 secondary_push,distribution_fcm 默认值为 secondary_fcm_push。
- VIP 用户:distribution 默认值为 first_ospush,distribution_fcm 默认值为 fcm。
厂商类型的 KEY 对应的 3 个策略参数如下:
| 关键字 | 类型 | 选项 | 含义 | 说明 |
|---|---|---|---|---|
| distribution | string | 可选 | 通知栏消息下发逻辑 | 取值不能为空字符串。 举例:假设指定一个小米用户的 RegistrationID 推送,请求时针对小米、OPPO 等厂商通道都指定了“ospush”,且 OPPO 厂商通道都配额已经用完,则推送同样会返回 1012 错误,提示厂商配额不足。 |
| distribution_fcm | string | 可选 | 通知栏消息 fcm+ 国内厂商组合类型下发逻辑 | 取值不能为空字符串。 |
| distribution_customize | string | 可选 | 自定义消息国内Android厂商类型下发逻辑 | 定义国内Android厂商类型用户下发自定义消息的逻辑,此功能仅支持 huawei、honor 通道,需 Android push SDK≥V3.9.0。 ⚠️注意:小米推送于2022年9月12日0点起停止提供透传消息下发的服务,届时您将无法通过小米通道发送透传消息,请注意调整下发策略,详见 小米官方公告 。 |
API 示例
"third_party_channel":{
"xiaomi":{
"distribution":"jpush",
"distribution_fcm":"fcm",
"distribution_customize":"first_ospush",
},
"huawei":{
"distribution":"secondary_push",
"distribution_fcm":"jpush",
"distribution_customize":"first_ospush",
},
"honor":{
"distribution":"secondary_push",
"distribution_fcm":"jpush",
"distribution_customize":"first_ospush"
},
"meizu":{
"distribution":"jpush",
"distribution_fcm":"pns"
},
"fcm":{ // 这个参数不支持 distribution_fcm 字段
"distribution":"jpush"
},
"oppo":{
"distribution":"ospush",
"distribution_fcm":"secondary_fcm_push",
},
"vivo":{
"distribution":"jpush",
"distribution_fcm":"secondary_pns_push",
},
"hmos":{ // 这个参数只支持distribution字段,下发策略对鸿蒙平台通知(notification)和鸿蒙平台自定义消息(message)均生效
"distribution":"jpush"
}
}
控制台使用
通知消息
进入【极光推送】-【创建推送】-【通知消息】页面,点击【Android 平台】-【高级设置】-【通知下发策略】,选择需要配置的通知下发策略。
厂商通道状态显示了当前应用开通和配置厂商通道的情况,通知下发策略仅对集成了厂商通道的设备有效。

自定义消息
进入【极光推送】-【创建推送】-【自定义消息】页面,点击【Android 平台】-【高级设置】-【通知下发策略】,选择需要配置的通知下发策略。
厂商通道状态显示了当前应用开通和配置厂商通道的情况,通知下发策略仅对集成了厂商通道的设备有效。
