pushuo
pushuo
  • 发布:2022-12-15 09:53
  • 更新:2022-12-16 19:01
  • 阅读:456

【报Bug】unipush!uni.onPushMessage 监听到消息后 使用 uni.createPushMessage 创建本地通知点击闪退!且没有内容。

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 3.6.13

手机系统: iOS

手机系统版本号: iOS 16

手机厂商: 苹果

手机机型: 16.1.2

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

代码一:

   uni.onPushMessage((res) => {  
        console.log("收到推送消息:",res) //监听推送消息  

        let pushToUrl = '';  
        if (res.type == 'receive') {  
          uni.createPushMessage({  
            title: res.data.title,  
            content: res.data.content,  
            payload: res.data.payload,  
          })  
        }  
      })

代码二:

      plus.push.addEventListener("receive", function(msg) {  
        console.log("recevice:" ,msg)  

        // if (msg.aps) { // Apple APNS message  
        //   //APNS下发的消息,应用在前台  
        //   plus.push.createMessage(msg.content, msg.payload, {  
        //     title: msg.title  
        //   });  
        // } else if (msg.type != "receive") { // 特殊payload标识本地创建的消息  
        //   //本地创建的消息,通常不需要处理  
        //   //注意:不要在这种情况下再此调用plus.push.createMessage,从而引起循环创建本地消息  
        // } else {  
        //   //接收到在线透传消息  
        //   plus.push.createMessage(msg.content, msg.payload, {  
        //     title: msg.title  
        //   });  
        // }  

        if (msg.type) {  
          plus.push.createMessage(msg.content, msg.payload, {  
            title: msg.title  
          });  
        }  
      }, false);

以上代码都是点击闪退

操作步骤:

使用 uni.onPushMessage 监听消息,然后app打开情况下 使用 createPushMessage 创建本地通知栏

预期结果:

能正常创建本地通知栏,能出来标题 和 内容,点击不会闪退

实际结果:

创建 本地通知栏 createPushMessage 没有标题和内容,点击闪退

bug描述:

使用 unipush 推送,
我想在 app 在线情况下,也显示推送通知栏,根据这里文档 https://uniapp.dcloud.net.cn/unipush-v2.html#online “监听到消息内容后,根据业务需要自己判断是否要创建“通知栏消息”,需要就调用创建本地消息API uni.createPushMessage手动创建通知栏消息。”

然后我就开始做,当 onPushMessage 监听到消息的时候,结果是使用 createPushMessage 能弹出通知栏,但是没有标题和内容(在同样情况下,离线推送有内容和标题),最重要的是当我点击通知栏的时候, APP 闪退了

2022-12-15 09:53 负责人:DCloud_iOS_WZT 分享
已邀请:
DCloud_iOS_WZT

DCloud_iOS_WZT

你的content是不是空额 我看下这个问题

  • pushuo (作者)

    content 确实是空的,我是在 dcloud 后台 uniPush 发送的推送消息,通知标题 和 通知内容 都写了,但是接受到的推送没有这些。 这个是接受到的json {

    "type": "receive",

    "data": {

    "aps": null,

    "content": "",

    "payload": "",

    "title": "JC food",

    "type": "receive"

    }

    }

    2022-12-19 09:18

  • DCloud_iOS_WZT

    回复 2***@qq.com: 我记得有几项是必填的 你不要传空

    2022-12-19 11:49

  • pushuo (作者)

    回复 DCloud_iOS_WZT: 这就是我奇怪的地方,通知标题 和 通知内容 都写了,必填项都填写了,收到的推送也没有这些内容。很奇怪,你可以试一下 通过 dcloud 后台 uniPush 发送推送消息

    2022-12-19 11:56

要回复问题请先登录注册