亿企查
亿企查
  • 发布:51 分钟前
  • 更新:42 分钟前
  • 阅读:17

【报Bug】鸿蒙无法接收来自uniPush.sendMessage推送的消息

分类:鸿蒙Next

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11专业版 24H2

HBuilderX类型: 正式

HBuilderX版本号: 4.85

手机系统: HarmonyOS NEXT

手机系统版本号: HarmonyOS 5.0.5

手机厂商: 华为

手机机型: Mate 60

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

return await uniPush.sendMessage({
"push_clientid": "ea948eb479cf7afafcb783eb1786b9bc", //填写上一步在uni-app客户端获取到的客户端推送标识push_clientid
"force_notification": true, //填写true,客户端就会对在线消息自动创建“通知栏消息”。
"title": "消息通知",
"content": "555555555555555",
"payload": '',
"badge": 1,
"category": {
"harmony": "SUBSCRIPTION",
"huawei": "SUBSCRIPTION",
"vivo": "SUBSCRIPTION"
}
})

操作步骤:

sendMessage

预期结果:

推送成功

实际结果:

推送失败

bug描述:

在推送平台能推送,使用uniPush.sendMessage无法推送,uniPush.sendMessage返回结果
{
"data": {
"RASS_1204_3d4fbd920ee057b87fccfca284891479": {
"ea948eb479cf7afafcb783eb1786b9bc": "successed_online"
}
},
"errCode": 0,
"errMsg": "success"
}

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

Ask小助手

根据您描述的问题和提供的环境信息,结合知识库内容分析如下:

鸿蒙平台从HBuilderX 4.31开始支持uniPush推送(您当前使用4.85符合要求),但华为设备需要特别注意以下配置:

  1. 华为推送服务配置:请确认已在华为开发者后台开通推送服务,并正确配置了SHA256指纹证书

  2. 关键文件缺失:华为厂商必须上传agconnect-services.json文件到uni-app后台的【uni-push/1.0/消息推送】-【配置管理】中,且包名需与客户端完全一致

  3. 客户端监听逻辑:确保在onLaunch中正确注册了推送消息监听:

    uni.onPushMessage((res) => {  
    console.log("收到推送消息:", res);  
    });
  4. 离线推送验证:在uni-push后台【故障排查】-【状态查询】中输入CID,检查是否返回了devicetoken。若未返回,说明厂商集成未成功

  5. 证书问题:云打包必须使用自有证书打正式签名包(debug包无法测试离线推送)

特别注意:鸿蒙平台不支持app-plus相关API,所有推送配置必须按照uniPush 2.0文档进行设置。建议重新检查华为厂商配置并确保agconnect-services.json文件正确上传后重新云打包测试。

内容为 AI 生成,仅供参考
亿企查

亿企查 (作者)

1、已开通推送服务 2、json已经配置 3、必须注册推送消息监听吗?我没注册,我只要能推送到手机就行 4、查询中返回了devicetoken 5、我真机运行的在uni-push后台推送能收到,但是使用sendMessage推送无法收到

要回复问题请先登录注册