1、nvue app,接入 uni-push 2.0,保证能正常收到 push 消息
2、把 app 切换到后台
3、超过 10 分支再切回来
4、此时用另一个账号另一个手机给这台手机的账号发消息,收不到 push
注意:
1、仅在 ios 平台有这个 bug,安卓没问题
2、如果是 5 分钟以内,切回来,ios 设备也没问题。超过 5 分钟(最好 10 分钟以上),就有这个 bug
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 14.5 (23F79)
手机系统: iOS
手机系统版本号: iOS 16
手机厂商: 苹果
手机机型: iphone14
页面类型: nvue
vue版本: vue3
打包方式: 云端
项目创建方式: CLI
CLI版本号: 1.0.0
1、nvue app,接入 uni-push 2.0,保证能正常收到 push 消息
2、把 app 切换到后台
3、超过 10 分支再切回来
4、此时用另一个账号另一个手机给这台手机的账号发消息,收不到 push
注意:
1、仅在 ios 平台有这个 bug,安卓没问题
2、如果是 5 分钟以内,切回来,ios 设备也没问题。超过 5 分钟(最好 10 分钟以上),就有这个 bug
切到后台后,等待长时间后(超过10分钟),app 切回来,依然能收到 push 消息
切到后台后,等待长时间后(超过10分钟),app 切回来,无法收到 push 消息
使用 uni-push 2.0,在 App.vue 页面的 onLaunch,打开 push 侦听:
uni.offPushMessage(onPushMessage);
// 监听im消息
uni.onPushMessage(onPushMessage);
1、此时收发消息正常,push 也能收到。
2、切换到后台,再立马切回来,也能正常收发消息
1、把 app 切换到后台
2、超过 10 分支再切回来(电脑终端,日志输出能看到:[GtPush] already connected __WARN)
3、此时用另一个账号另一个手机给这台手机的账号发消息,收不到 push
现象一:如果切到后台,等待的时间不长,比如三、四分钟,再切回来。还是正常的。
现象二:当不正常状态出现时,如果当时立刻切换到其它app,再切回来,就可恢复正常。
现象三:这个 bug 只在 ios 设备出现,安卓没有这个问题
现象三:用另一台 iphone11,ios14.4 版本,也是能复现此问题
初步判断,这个 bug 的产生,是当应用从后台切换到前台时,GtPush 检查 connected 状态的逻辑有 bug,实际已经断开了,但认为没断开。
此时,再触发一次切到后台立马切到前台,就可以恢复正常。
GreatGoGoGo (作者)
在的?
2025-02-01 21:39