胡英俊小dd
胡英俊小dd
  • 发布:2021-10-25 15:01
  • 更新:2022-11-11 10:11
  • 阅读:1314

【报Bug】unipush 消息透传创建消息会话导致 ios 崩溃闪退

分类:uni-app

产品分类: uniapp

App下载地址或H5⽹址: https://testflight.apple.com/join/yxHh7ZnM

示例代码:

//监听接收透传消息事件    
            plus.push.addEventListener('receive', (msg) => {  
                //处理透传消息的业务逻辑代码   
                if (uni.getSystemInfoSync().platform == 'ios') {  
                    // 通知栏消息 问题在这里  
                    plus.push.createMessage(msg.payload.content, JSON.stringify(msg.payload), {  
                        title: msg.payload.title,  
                        cover: false  
                    })  
                } else {  
                    // 语音播报  
                    let token = msg.payload.token  
                    let content = msg.payload.content  
                    _this.audio(content, token)  
                }  
                // plus.nativeUI.alert("receive:---" + "token:" + token + '----content:' + content+JSON.stringify(msg.payload))  
                // uni.$emit('uni_push', msg)  
            }, false)

操作步骤:

下载app后 使用测试账号登录-》我的-》打开 ‘我的收款码’,
使用另一个手机扫码后随便付款0.01元,即可出现。。

预期结果:

收到消息通知后 app正常使用 不出现崩溃

实际结果:

收到消息通知后崩溃

bug描述:

ios 14.8 版本与 ios 15 版本都有出现这样的问题

hbuliderX 版本: 3.2.9

测试方式:正式打包并发布后测试

bug: 当app在前台运行时 ,收到消息推送后 马上会崩溃9

2021-10-25 15:01 负责人:无 分享
已邀请:
胡英俊小dd

胡英俊小dd (作者) - 介绍

hbuilder 版本3.2.9

胡英俊小dd

胡英俊小dd (作者) - 介绍

问题已经解决 !!!

导致问题原因: 因为plus.push.createMessage创建消息时 会 触发一次 透传’receive‘,所以导致死循环
解决办法: 判断一下msg.payload.content 是否为空,第一次推送时后台会有内容,但是创建消息时触发的透传时没有内容的,所有有内容就创建 无内容就不创建即可

mui_js小白

mui_js小白 - 95后it孩子

那是你女朋友吗,蛮漂亮的

  • 1***@qq.com

    大家都是来看问题的

    2022-05-20 16:21

pufl23

pufl23

请问在哪个步骤判断msg.payload.content是否为空,我这边判断了,但没起左右,能发下这个代码吗

要回复问题请先登录注册