AnyChat技术支持论坛

标题: anychat断网重新连接机制问题 [打印本页]

作者: william2014    时间: 2014-8-7 16:24
标题: anychat断网重新连接机制问题
你好,ios客户端(A端)在与服务端(B端)进行anychat视频通话时,在A切换了网络,发现A会进行退出房间、退出登录、然后大约10s后重新进行connect;
但是这样会有个缺陷:此时B会收到A离开房间的消息,会进行OnAnyChatUserLeaveRoom回调,而此时一般都会认为A已经离开了,
然后B也会进行一些退出、断开anychat连接的操作,而此时A其实在进行connect重连,但是重练成功后,发现B已经离开房间了。
此时,断线重连的机制并没有利用起来,该如何解决呢?

作者: admin    时间: 2014-8-7 16:32
您好,您可以关闭断线重连功能:
  1. #define BRAC_SO_NETWORK_AUTORECONNECT                47        ///< 网络掉线自动重连功能控制(参数为int型,0 关闭, 1 开启[默认])
  2. [AnyChatPlatform SetSDKOptionInt : BRAC_SO_NETWORK_AUTORECONNECT : 0];
复制代码

作者: 廖斌    时间: 2014-8-7 16:34
如果B要等A自动重连的话,就不应该做退出anychat的操作哦。正确的方法是B知道A离开房间后,等A一段时间,如果A没进来,再退出@此时B会收到A离开房间的消息,会进行OnAnyChatUserLeaveRoom回调,而此时一般都会认为A已经离开了,
然后B也会进行一些退出、断开anychat连接的操作
作者: 廖斌    时间: 2014-8-7 16:36
廖斌 发表于 2014-8-7 16:34
如果B要等A自动重连的话,就不应该做退出anychat的操作哦。正确的方法是B知道A离开房间后,等A一段时间,如 ...

在上面的基础上面还可以做些改进,B要知道A离开房间是因为什么原因离开的,是主动退出还是由于网络掉线。如果是主动退出的话,B就退出;如果是网络掉线的话,就等A重连进来。
作者: 廖斌    时间: 2014-8-7 16:37
admin 发表于 2014-8-7 16:32
您好,您可以关闭断线重连功能:

当然,如果为了保持两边的登录状态一致,也可以不让A重连。




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3