uni-app在APP安卓端,切换应用的时候,websocket会断开,什么是切换应用,比如QQ切换微信,切换之后就会断开,设置什么心跳检测,定时器,权限啥的都没用,心跳定时器检测在小程序端或者web端还是有用的,我亲自测试web端,一晚上都不会断,但是到了APP端一切换就断了。我折腾了好几天,权限都设置了也没用,终于想到一个方法,就是切换的时候触发方法,重新连接websocket,因为websocket机制的话,在连接中情况的话,再连接是不会有效果的。直接上代码吧,原理就这些了

app.vue

onShow:function(){
    uni.connectSocket({
  		url: 'wss://xxxxxxxxxxxx',
  		success: res=>{
  			uni.showToast({
    			title: 'websocket 连接了',
    			duration: 2000
			});
  		}
	});
}

onShow的方法作用是一打开APP就触发,如果websocket断了,进入APP就重新连接了,只要按照这样的思路,在APP里面就不会断了

 

原创文章,转发请备注来源:https://dt2008.cn/article/303.html

最后修改于 2022-01-03 20:21:00
上一篇