默认
发表评论 4
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] 请问MobileIMSDK如何踢掉一个登录用户
阅读(43173) | 评论(4 收藏 淘帖1
当同一个ID用户登录到两台设备时,两台设备会不停的断线登录,我现在想当后一个设备登录时把前一个设备登录的账号踢掉,但在文档里找到的UserProcessor类的removeUser(int user_id) 方法使用后,返回true了。但两台设备还是在不停的断线重新登录中。好像没实现前一个设备断开,只有后一个设备是登录状态的效果。

        想问一下这块应该是怎么来实现呢?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:MobileIMSDK
上一篇:[已回复] MobileIMSDK的 android 端反馈这个错误码301下一篇:[已解决] MobileIMSDK服务端部署在阿里云上客户端连接不成功的问题

本帖已收录至以下技术专辑

推荐方案
评论 4
MobileIMSDK中没有踢掉线的指令,因为踢掉线这种跟业务层的多账号登陆逻辑有关,为了保证MbileIMSDK的SDK层代码的复用性并简化逻辑。

踢掉线逻辑你可以自已去实现,具体的思路就是:
新增一个踢掉线的系统级指令,由服务端发出,当户端收到时马上结束网络监听和网络socket等(回到客户端login前的状态即可)。
引用:JackJiang 发表于 2017-05-24 10:31
MobileIMSDK中没有踢掉线的指令,因为踢掉线这种跟业务层的多账号登陆逻辑有关,为了保证MbileIMSDK的SDK层 ...

您的意思是对于同一个ID重复登录这块的处理是需要定义一个新的系统指令是吧?
那这个指令的发送是不是要在新的用户登录请求发送,在服务端验证onVerifyUserCallBack方法返回成功前进行发送指令告诉已经登录的那个设备结束监听断开socket是吧?还是在别的地方处理?
引用:heavenK 发表于 2017-05-24 10:42
您的意思是对于同一个ID重复登录这块的处理是需要定义一个新的系统指令是吧?
那这个指令的发送是不是要 ...

是的,你的理解是对的。参照其它指令依此类推写一个就好,不会复杂
引用:JackJiang 发表于 2017-05-24 11:08
是的,你的理解是对的。参照其它指令依此类推写一个就好,不会复杂

好的,多谢了。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部