111844
首先,cocos creator 导入插件不好用,只能不导入插件,用require方式才能访问 另外, client.reconnectAndRejoin(); 这个方法,有点疑问 在reconnectAndRejoin(比如房间号不存在了)失败后,再次操作会报一个 ws.readyState 为null的错误。最后我只能用先reconnect再rejoin的形式。 实际上,我觉得reconnectAndRejoin就算失败了,但connect不一定失败。 现在又发现如果能用先reconnect再rejoin的形式。ios自己断网再连接测试,rejoin会报房间已满错误 还有一个 如果房主掉线…
谢谢你的回复。 关于第三个问题,房主掉线了,然后重连成功了。这个时候,服务的其实已经更换了房主了。 但是其他客户端,自始至终没有收到 MASTER_SWITCHED 的回调, 有新客户端加进来,就可以看到实际上房主已经换了。但之前房间里的客户端,并没有收到房主已经更换了的回调。调用master.userId等接口,还是之前未更改的房主号。
我问题描述,所指的是p0房主掉线,而不是p0房主主动离开房间。 p0掉线后,服务器房主已经切换,但房间内的其他客户端未收到但是其他客户端,没有收到 MASTER_SWITCHED 的回调。 p0掉线重连成功后,p0因为有重连操作,p0内部信息有更新,可以知道房主已经切换
保持时间我知道,但我遇到的,没有涉及到这个,实际上就是在这个时间内 我是ios原生平台测试发现的。而是我主动把p1(在ios端)的网络关掉。再马上重连,会报房间已满 所有操作都在playerTtl时间内。就是不在这个时间内,反而房间应该已经只有3个人了,应该也可以加入 关于这个问题,我后来还是用reconnectAndRejoin方法了
如果是网络连接没有建立起来,“此时会报加入房间错误(房间不存在)” 不会走到这一步,会直接报socket错误。连接都没成功,怎么还会知道房间还存在不存在 只有连接成功了,才会报 “此时会报加入房间错误(房间不存在)” 我是确实多次捕捉到了ws.readyState 为null的错误,就是在你操作 再创建其他房间 的时候报的错。 我倒是忘记了,在网页上测试时,有没有遇到过这个问题 我做测试时,因为要做断线重连。所以会有两种方法测试,一种是后台挂起测试,一种是直接断网重连测试 另外,我是ios原生平台 和网页,共同测试。一些问题,可能网页上不会碰到,到ios原生平台就碰到了
这样吧,我之后测试在碰到的时候,马上截图,在看看