【环境】
- DCloud appId:UNIF0AA0BA(应用:八折半-商家端)
- uniCloud 支付宝云空间,云函数通过 uniCloud.getPushManager({appId:'UNIF0AA0BA'}).sendMessage 下发
- 问题设备 CID:d3274b6ed499c8dd9f2c7481eaef343e
- 设备:小米14(机型 23127PN0CC,HyperOS 3.0.3.5.0),已重新云打包并安装,故障排查显示:CID正常、归属包名 uni.app.UNIF0AA0BA 正确、Device Token 有值(N8iUnSUYF6LmI/GXjlRZBk1g3BNbxBxKZMwnGXemC8+U8OyZ81ZlRZgHeBiN+RO)
- 问题 taskid:RASS_0921_7f5913284f6ce8313c910a2d404fecfe
【现象】
- App 杀进程离线时,sendMessage 对该 CID 返回 successed_offline,但消息从未到达设备;App 打开在线时可正常收到(走个推通道)。
- 小米开放平台推送统计全天数据:推送总量=0、实际下发=0、送达数=0,即个推从未调用小米推送接口。
- 对照组:OPPO 厂商通道离线推送正常(同一云函数、同一时间下发,OPPO 杀进程可收到)。
- 裸消息测试(sendMessage 不带任何厂商 options、不带 sound 参数,仅 push_clientid/title/content/payload/force_notification)同样离线不下发,可排除云函数自定义参数问题。
【已排查确认的事项】
- uni-push 后台厂商推送设置-小米:通道开关开启,AppID 2882303761520550702 / AppKey 5232055093702 / AppSecret 与小米开放平台一致,保存验证通过。
- 小米开放平台:应用包名 uni.app.UNIF0AA0BA 与 manifest 一致;通知类别 156926(新订单)、156927(退款订单)存在且状态正常,自定义铃声 URI 包名正确;隐私政策已上传;应用已上架(在架版本1.0.2,1.0.3审核中)。
- manifest.json:push 模块已勾选,unipush version 2,offline true,mi 配置存在。
- 客户端系统通知权限全部开启(允许通知/锁屏/悬浮/声音/振动均开)。
- 故障排查显示该 CID 无黑名单、Device Token 正常。
【疑问】
个推侧已有该设备的小米厂商 token(Device Token 有值),但消息始终不下发到小米通道,小米统计全天为 0。请协助查询上述 taskid 的厂商通道路由日志,确认为什么个推未向小米推送接口下发这条离线消息,或需要我们补充什么配置。
1 个回复
Ask小助手 - Ask社区AI助手
根据您提供的详细排查信息和知识库中的相似案例,这是一个典型的厂商通道路由异常问题。由于
successed_offline仅表示个推服务端已受理离线消息任务,并不保证厂商通道实际执行下发,结合小米侧统计为 0 的情况,说明消息在个推侧未能成功路由到小米推送接口。基于知识库中 DCloud 官方人员的排查思路,请按以下步骤验证:
1. 检查小米系统级通知渠道设置(最常见原因)
根据 DCloud 官方人员在类似案例中的指引,即使个推配置正确,如果小米系统层面的通知渠道被用户关闭或分类不当,厂商通道会直接丢弃消息且小米后台统计为 0。
请在小米14上检查:
channel_id(如 156926、156927)对应的渠道已启用2. 验证 category 与 options 配置
根据 uni-push 消息分类管理文档,小米厂商通道对消息分类有严格要求。
建议的 sendMessage 参数结构:
3. 关于 Channel ID 的特殊说明
根据知识库中 DCloud 官方人员的说明,Channel ID 是 Android 标准概念,但各厂商实现不一:
options或category指定,而非仅依赖客户端设置4. 申请开通厂商下发策略权限
根据 uni-push strategy 文档,精确控制厂商下发策略需要单独申请开通。
如果需要在云函数中强制指定小米通道策略(
strategy.xm),请确认:5. 收集日志并提交工单
由于您已确认个推侧存在有效的小米 Device Token,但厂商侧零下发,这通常需要查询个推服务端的路由日志。
请通过 DCloud 官方渠道提交工单,并提供:
RASS_0921_7f5913284f6ce8313c910a2d404fecfed3274b6ed499c8dd9f2c7481eaef343e__UNI__F0AA0BAuni.app.UNIF0AA0BA要求个推技术支持查询:
补充建议
根据相似案例经验,可尝试以下验证:
由于 OPPO 正常而小米异常,大概率是小米特有的通道配置或权限问题,而非代码逻辑错误。
要回复问题请先登录或注册
公告
更多>相关问题