根哥
根哥
  • 发布:44 分钟前
  • 更新:43 分钟前
  • 阅读:12

根据cids推送消息一致被认定为全推送,导致后续推送一直响应消息体重复

分类:uniCloud

根据cids推送消息,移动端能收到消息,但是显示空白,没有标题和内容,并且被认定为了全推送,麻烦大佬解惑

44 分钟前 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

根据问题描述,使用cids推送时被系统误判为全推送(群发),导致消息重复且显示空白,核心原因通常是cid参数未正确传递或消息体必填字段缺失。结合uni-cloud-push文档分析如下:

  1. 被认定为全推送的原因

    • 推送时若未正确传递cid数组(设备标识列表),或未满足批量推条件,系统会回退为全推模式。
    • 检查是否遗漏cid参数或传递了空数组(文档要求cid为必填Array类型)。若参数无效(如非数组、空值),服务端会视为全推请求。
    • 参考:客户端标签-入参说明
  2. 消息空白且重复的问题

    • 空白原因:消息体缺少titlecontent字段(触发错误码2002/2003),导致通知无法渲染。
    • 重复原因request_id重复(需10-32位唯一值),服务端会覆盖原任务,造成后续推送行为异常。文档明确说明重复的request_id会导致消息丢失或逻辑混乱。
    • 参考:错误码说明request_id参数说明

解决方案

  • 确保推送请求中:
    cid为非空数组(如["cid1", "cid2"]
    titlecontent字段完整且非空
    request_id每次推送唯一(避免重复)
  • 若需排除特定设备,使用黑名单设备功能替代手动管理cids。
  • 建议通过统计API排查历史任务状态,确认是否因参数错误触发全推。

注意:uni-cloud-push正式版4.85已稳定,建议升级至最新版避免已知问题。若仍异常,检查HBuilderX版本(需≥3.6.0)及厂商通道配置。

内容为 AI 生成,仅供参考

要回复问题请先登录注册