Java Android socket io获取在线用户

Java Android socket io获取在线用户,java,android,websocket,socket.io,Java,Android,Websocket,Socket.io,我正在开发一个Android私人聊天应用程序。在这个应用程序中,我想查看在线用户或检查用户是否在线。我已经得到了推荐信 emit("login",userid); 用于获取联机用户。所以我用 public class OnlineActivity extends AppCompatActivity { private Socket mSocket; @Override protected void onCreate(Bundle savedInstanceState)

我正在开发一个Android私人聊天应用程序。在这个应用程序中,我想查看在线用户或检查用户是否在线。我已经得到了推荐信

emit("login",userid);
用于获取联机用户。所以我用

public class OnlineActivity extends AppCompatActivity {
    private Socket mSocket;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_online);

        ChatApplication app = (ChatApplication) getApplication();
        mSocket = app.getSocket();

        JSONObject user = new JSONObject();
        try {
            user.put("userId", "abc");
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        mSocket.emit("login",user);

        Log.d("LOG", String.valueOf(mSocket.emit("login",user)));
        Log.d("LOG", String.valueOf(user));
    }
}
其中abc是用户id,但不显示任何结果。请帮帮我。

答案如所示

socket.on('isActive', function (user) {
const userId = user.userId;
const user = usernames[userId];
const socketId = socket.id;
let response;
if(user) {
    // User is active
    response = {isActive: true};
} else {
    // User is not active
    response = {isActive: false};
}
const responseSocket = io.sockets.connected[socketId];
if(responseSocket) {
    responseSocket.emit('onIsActive', response);
}
});