1***@qq.com
1***@qq.com
  • 发布:2025-02-14 17:40
  • 更新:2025-02-17 11:44
  • 阅读:98

【报Bug】杀掉应用后,发送一条消息通知后,fcm拉起进程在线后,再发送通知,uni.onPushMessage监听不到透传消息,打开应用后又可以

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 10 专业版

HBuilderX类型: 正式

HBuilderX版本号: 4.36

手机系统: Android

手机系统版本号: Android 10

手机厂商: 三星

手机机型: Galaxy Note9,型号:SM-N960U1

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

APP.vue中代码如下:

onLaunch: function() {  
            console.log('App Launch');  

            // #ifdef APP-PLUS  

            console.log('11111111111111');  
            // 获取当前应用的cid  
            plus.push.getClientInfoAsync((info) => {  
                console.log('------------getClientInfoAsync---------');  
                console.log(info);  
            });  

            // 获取客户端唯一的推送标识  
            getPushClientIdWithRetry();  

            // 设置接收透传消息的监听器  
            uni.onPushMessage(function(result) {  
                console.log('收到推送消息:', result);  

                const { type, data } = result;  
                const { payload } = data;  
                const { definedTitle: title, definedContent: content } = payload;  

                if (type === 'receive') {  
                    // 应用从推送服务器接收到推送消息事件  
                    uni.createPushMessage({  
                        title,  
                        content,  
                        payload,  
                        success(a, b, c) {  
                            console.log('createPushMessage success', a, b, c);  
                        },  
                        fail(a, b, c) {  
                            console.log('createPushMessage fail', a, b, c);  
                        }  
                    })  
                }  
            });  
            // #endif  
        }

操作步骤:

1,上滑杀掉app应用
2,后台发送一条消息通知
3,手机顶部收到一条通知
4,此时故障排查中,查看该应用的cid,显示在线(应该是fcm拉起进程在线)
5,后台再次发送消息通知,手机顶部收不到通知信息,uni.onPushMessage没有监听到消息通知
6,打开app应用后,uni.onPushMessage监听到消息通知

预期结果:

fcm拉起app进程在线后,后台再次发送通知,uni.onPushMessage应该要能继续监听到消息

实际结果:

fcm拉起app进程在线后,后台再次发送通知,uni.onPushMessage没有监听到消息,而是打开app后才监听到。
这样导致后续发送通知时,手机收不到通知消息的现象。
这个问题对于消息通知来说,比较严重,麻烦给予技术支持,非常感谢。

bug描述:

fcm消息推送,已开通unipush1.0推送服务,相关配置已设置,使用自定义基座进行调试。
问题:杀掉app应用后,发送一条消息通知后,此时通知栏收到一条消息后,fcm拉起进程在线,再次发送通知,app应用监听不到透传消息,打开app应用后又可以

2025-02-14 17:40 负责人:DCloud_Android_THB 分享
已邀请:
DCloud_Android_THB

DCloud_Android_THB

fcm拉起进程,但是js线程并没有启动,所以会缓存收到的消息,等到app打开的时候再释放消息,此时你可以获取到缓存的消息。

  • 1***@qq.com (作者)

    fcm拉起进程,js线程并没有启动,此时怎么能继续监听到透传消息并创建本地通知?

    2025-02-17 14:22

要回复问题请先登录注册