用户3152744
用户3152744
  • 发布:2026-09-18 13:07
  • 更新:2026-09-18 14:35
  • 阅读:319

【报Bug】uniPush 2.0 小米厂商通道不转发,个推返回 successed_offline 但小米侧无记录

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: intel

HBuilderX类型: 正式

HBuilderX版本号: 5.26

手机系统: Android

手机系统版本号: Android 15

手机厂商: 小米

手机机型: Xiaomi Civi 2

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

标题:uniPush 2.0 小米厂商通道不转发,个推返回 successed_offline 但小米侧无记录

应用 UNIC6FF20A(个推 AppID: vgqqtJ7XeJ7K9pAaG0nRg7,包名 com.xuancaimao.benben)

DCloud 厂商推送设置已配置小米 AppID/AppKey/AppSecret 并保存成功(已重新保存触发同步)
小米开放平台侧:应用“选材猫”推送已启用、通知类别 160332 状态正常、私信模板 P16206 审核通过
设备厂商 Device Token 注册成功(DCloud 故障排查可查证 cid 666e72c62ad0f9f18254fddfa6bfb09e)
服务端经个推 REST API v2 下发 Ups(含 XM /extra.channel_id=160332、/extra.template_id=P16206、template_param),返回 successed_offline
小米推送平台消息记录始终为 0 条(发送成功/失败均无记录),设备收不到
同应用华为(category=WORK)、荣耀(importance=NORMAL)通道同方式接入均正常送达 请排查个推侧该应用的小米通道配置同步状态。

预期结果:

杀死app也能收到消息推送

实际结果:

但是现在杀死app,还是收不到消息推送

bug描述:

标题:uniPush 2.0 小米厂商通道不转发,个推返回 successed_offline 但小米侧无记录

应用 UNIC6FF20A(个推 AppID: vgqqtJ7XeJ7K9pAaG0nRg7,包名 com.xuancaimao.benben)

DCloud 厂商推送设置已配置小米 AppID/AppKey/AppSecret 并保存成功(已重新保存触发同步)
小米开放平台侧:应用“选材猫”推送已启用、通知类别 160332 状态正常、私信模板 P16206 审核通过
设备厂商 Device Token 注册成功(DCloud 故障排查可查证 cid 666e72c62ad0f9f18254fddfa6bfb09e)
服务端经个推 REST API v2 下发 Ups(含 XM /extra.channel_id=160332、/extra.template_id=P16206、template_param),返回 successed_offline
小米推送平台消息记录始终为 0 条(发送成功/失败均无记录),设备收不到
同应用华为(category=WORK)、荣耀(importance=NORMAL)通道同方式接入均正常送达 请排查个推侧该应用的小米通道配置同步状态。

2026-09-18 13:07 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uniCloud 官方技术交流群 ) 咨询,群中有相关专业的管理员和群友。

感谢您提交详细的 Bug 反馈。作为 DCloud 官方人员,我对您的反馈内容进行了评审,以下是针对该反馈的分析与排查建议:

1. Bug 反馈内容评审

  • BUG 描述:描述非常清晰。您准确提供了 __UNI__C6FF20A、个推 AppID、包名等核心信息,并详细说明了 DCloud 后台配置状态、小米开放平台审核状态、设备 Token 注册情况以及个推 API 返回的 successed_offline 状态。同时对比了华为、荣耀通道的正常送达情况,这非常有助于官方人员定位问题。
  • 代码示例:反馈中未直接提供服务端调用个推 REST API v2 下发 Ups 的请求体代码示例。由于涉及厂商通道转发失败,完整的请求参数(尤其是 strategy 厂商下发策略、channel_id、template_id 等参数的层级结构)对于排查至关重要。
  • 复现步骤:描述清晰,但由于缺少上述请求体代码,官方人员可能无法直接复现并验证请求参数是否完全符合规范。
  • 预期结果与实际结果:预期结果合理,实际结果描述准确,符合 Bug 的判定标准。
  • 分类信息:包含了 HBuilderX 版本号、手机系统版本、设备机型等关键信息,非常完整。

2. Bug 是否成立及排查建议

根据返回的 successed_offline 状态,在 uni-push 中表示该消息已进入离线下发(包含厂商通道下发)流程。但小米平台无记录且设备未收到,说明消息可能在个推向小米厂商通道转发环节出现异常。

结合知识库与官方排查经验,建议您从以下几个方面进行排查:

  1. 检查服务端请求参数的规范性:
    请补充并检查您服务端调用 API 时传递的完整 JSON 请求体。根据官方文档,strategy(厂商下发策略选择)参数会影响下发通道。请确保您的请求中 strategy 参数设置正确(例如:1 表示在线走个推,离线走厂商;2 表示只走厂商通道)。如果未正确指定厂商下发策略,可能导致消息未真正进入小米通道。详见 strategy 厂商下发策略选择。

  2. 小米通道配置与模板参数:
    根据优先知识库说明,uni-push 中 channel 已不推荐使用,请通过 category 和 options 配置。您提到使用了 /extra.channel_id=160332、/extra.template_id=P16206,请核对个推服务端 API 文档,确认这些小米专属参数是否放置在了正确的节点层级下,以及是否与小米开放平台后台申请的类别和模板严格一致。详见 uni-push options 配置。

  3. 个推侧同步状态排查:
    您提到“DCloud 厂商推送设置已配置并保存成功(已重新保存触发同步)”。如果以上请求参数均确认无误,由于华为和荣耀通道均正常,问题可能确实出在个推向小米侧的配置同步或转发链路上。

下一步建议:
为了进一步定位,建议您在此反馈中补充服务端下发的完整 API 请求体 JSON 示例。如果请求参数经核实完全规范,该 Bug 反馈将转交相关技术支持人员排查个推侧该应用的小米通道配置同步状态。

内容为 AI 生成,仅供参考
用户3152744

用户3152744 (作者)

感谢回复。按要求补充完整信息:

1 完整 API 请求体(POST https://restapi.getui.com/v2/vgqqtJ7XeJ7K9pAaG0nRg7/push/single/cid):

json
{
"request_id": "diag489713082",
"settings": {
"ttl": 3600000,
"strategy": { "default": 1 }
},
"audience": {
"cid": [ "666e72c62ad0f9f18254fddfa6bfb09e" ]
},
"push_message": {
"notification": {
"title": "小米策略诊断",
"body": "strategy参数测试",
"click_type": "startapp",
"payload": "{\"orderId\": \"diag4\"}"
}
},
"push_channel": {
"android": {
"ups": {
"notification": {
"title": "小米策略诊断",
"body": "strategy参数测试",
"click_type": "startapp"
},
"options": {
"XM": {
"/extra.channel_id": "160332",
"/extra.template_id": "P16206",
"/extra.template_param": "{\"title\": \"小米策略诊断\", \"content\": \"strategy参数测试\"}"
}
}
}
}
}
}
2 返回结果:{"code":0,"data":{"RASS_0918_72540ea548043b477883f0fa229dd24e":{"666e72c62ad0f9f18254fddfa6bfb09e":"successed_offline"}}}

3 参数核对说明:

strategy=default 1(在线走个推、离线走厂商),层级符合个推官方文档
/extra.channel_id=160332(小米开放平台审核通过的通知类别,状态“正常使用”)、/extra.template_id=P16206(审核通过的私信模板,变量 title/content 与 template_param 严格一致)
参数节点层级已按个推 REST API v2 官方文档(push_channel.android.ups.options.XM)核对
同一代码路径下,华为(HW /message/android/category=WORK)、荣耀(HO /android/notification/importance=NORMAL)均正常送达,仅小米异常
另请协助核实:个推侧该应用(vgqqtJ7XeJ7K9pAaG0nRg7)的厂商配置中,小米通道是否已实际同步生效——我们在 uniPush 2.0 后台保存小米参数多次均提示成功,但小米开放平台侧消息记录始终为 0(连失败记录都没有),怀疑消息未被个推转发至小米
烦请转交技术支持排查个推侧小米通道配置,谢谢。

要回复问题请先登录或注册