android 如何判断我使用的帐号是否已经在其它设备上登录
如题,我想在每次登录的时候,先做一个判断,判断我的帐号有没有在其它设备上登录,然后决定是不是要重新输入密码登录。而不是说就直接再把对方踢掉。
补充:因为环信本身有被踢掉的通知机制,所以,当一个设备上登录成功之后,完全退出程序,保证收不到在其它设备上登录的通知, 然后再运行程序。
补充:因为环信本身有被踢掉的通知机制,所以,当一个设备上登录成功之后,完全退出程序,保证收不到在其它设备上登录的通知, 然后再运行程序。
没有找到相关结果
已邀请:
1 个回复
lizg - ……
在聊天过程中难免会遇到网络问题,在此 SDK 为您提供了网络监听接口,实时监听
可以根据 disconnect 返回的 error 判断原因。若服务器返回的参数值为EMError.USER_LOGIN_ANOTHER_DEVICE,则认为是有同一个账号异地登录;若服务器返回的参数值为EMError.USER_REMOVED,则是账号在后台被删除。
//注册一个监听连接状态的listener
EMClient.getInstance().addConnectionListener(new MyConnectionListener());
//实现ConnectionListener接口
private class MyConnectionListener implements EMConnectionListener {
@Override
public void onConnected() {
}
@Override
public void onDisconnected(final int error) {
runOnUiThread(new Runnable() {
@Override
public void run() {
if(error == EMError.USER_REMOVED){
// 显示帐号已经被移除
}else if (error == EMError.USER_LOGIN_ANOTHER_DEVICE) {
// 显示帐号在其他设备登录
} else {
if (NetUtils.hasNetwork(MainActivity.this))
//连接不到聊天服务器
else
//当前网络不可用,请检查网络设置
}
}
});
}
}