业务场景:从生产机台上面通过websocket拿到实时的生产产量。
问题出现:如果是长时间屏幕开启的情况是没有问题的,但是如果中间把平板息屏了,再让屏幕亮起来,一大堆数据会涌上来。比如是用进度条表示,机器的生产进度,那么开屏后,这个进度条会快速涌满,直到当前实际的生产进度。
期望解决:当屏幕息屏的时候,断开websocket的连接,当屏幕开启的时候,重新建立websocket连接,直接拿到最新的生产数据即可
1***@qq.com
- 发布:2024-10-18 14:01
- 更新:2024-10-19 11:44
- 阅读:191
DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信
感谢反馈,这个看着不是 uniapp 的问题,是安卓环境为了省电这样做的。你在 app.vue 里监听
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
观察下,锁屏和解锁之后是否会正常触发,从这两个生命周期里做判断和兼容
1***@qq.com (作者)
onShow和onHide是写在和vue生命周期一样的地方吗,好像看起来没有生效。是在当前项目的app.vue文件里面
2024-10-19 11:18
DCloud_UNI_OttoJi
回复 1***@qq.com: 对,和 data 同级。我让你观察下打印主动进入后台和被动锁屏截屏是否有反应,有区别,把你的结论说一下
2024-10-19 11:34
1***@qq.com (作者)
回复 DCloud_UNI_OttoJi: 沒有反应,控制台没有看到信息输出。我在平板端开了VConsole。
2024-10-19 11:42
1***@qq.com (作者)
回复 DCloud_UNI_OttoJi: 没事了,onShow和onHide是有效的,与 uniapp 没有关系,我再自己研究一下
2024-10-19 11:52
1***@qq.com (作者)
回复 DCloud_UNI_OttoJi: 我用的其实是webview方案,那这种情况下,onShow和onHide能调用webview里面的函数吗
2024-10-19 14:24