cocos的JSB版websocket,在安卓上测试,只要每帧都发一条消息出去,不出5秒钟客户端就断线 socket close。 在windows PC上不会。这也太弱了吧!
请教下大家如果使用jsb 版的websocket,是怎么解决这个问题的?
cocos的JSB版websocket,在安卓上测试,只要每帧都发一条消息出去,不出5秒钟客户端就断线 socket close。 在windows PC上不会。这也太弱了吧!
请教下大家如果使用jsb 版的websocket,是怎么解决这个问题的?
有可能是网络的原因么?
不可能是网络原因,因为我也有发布H5的形式,在安卓手机上用谷歌浏览器运行H5版的,也不会断线
服务器采用NODE.JS,收到消息立即返回,代码很简单,如下:
var WebSocketServer = require(‘ws’).Server;
var wss = new WebSocketServer({port: 8080});
wss.on(‘connection’, function(ws) {
ws.on(‘message’, function(message) {
console.log(‘received: %s’, message);
ws.send(message);
});
ws.on(‘error’, function(message) {
console.log(‘error: %s’, message);
});
});
网络断开后,服务器提示:reserved fields must be empty
查看服务器WS模块的代码:
if ((data & 0x70) != 0) {
this.error(‘reserved fields must be empty’, 1002);
return;
}
怀疑cocos这边数据发过太快的时候,会很快导致websocket协议部分的数据错乱了,因为改成10帧发一次数据是不会有问题的
升级到3.10就好了!我也是这个样子!升级了以后就好了
不一定吧, 我目前用的是3.0的 ,也没说连着就断线了