java - Socket.io 0.9 在 Android 上发出响应,使用 Gottox/socket.io-java-client

标签 java android sockets socket.io gottox

如果有人可以告诉我,我的代码有什么问题吗? 我确实花了很多时间试图解决这个问题。 成功连接到服务器后,您可以在日志中看到“chatinfo”事件自动传递。

我使用: Gottox/socket.io-java-client在 Android 设备上, http://socket.io/服务器上的0.9.16, 授权是通过在建立连接时在 header 中传递 token 来实现的。

代码:

private void getList(SocketIO socket) {
    try {
        socket.emit(EventList.GETLIST, new JSONObject().put("sortByDate", true));
        Log.v("getList", "emitted");
    } catch (JSONException e) {
        e.printStackTrace();
        Log.v("getList", "not emitted");
    }
} 

代码:

@Override
public void on(String s, IOAcknowledge ioAcknowledge, Object... objects) {
    JSONObject respond = (JSONObject) objects[0];
    Log.d("testFromOn", "String s = " + s);
    Log.d("testFromOn", "on" + respond);
    switch (s) {
        case GETLIST:
            Log.d("GETLIST", "GETLIST responce: " + s);
            break;

日志

I/io.socket﹕ < 1::
D/test﹕ onConnect
I/io.socket﹕ < 5:::{"name":"chatinfo","args":[{"onlineCount":0,"onlineFriendsCount":0,"unreadCount":7,"unreadFriendsCount":0,"userInfo":{"avatar":"1415903272343.jpg","url":"/user/5431b4955518085d5db4be23","_id":"5431b4955518085d5db4be23"}}]}
D/testFromOn﹕ String s = chatinfo
D/testFromOn﹕ on{"onlineCount":0,"onlineFriendsCount":0,"unreadCount":7,"unreadFriendsCount":0,"userInfo":{"avatar":"1415903272343.jpg","url":"\/user\/5431b4955518085d5db4be23","_id":"5431b4955518085d5db4be23"}}
I/io.socket﹕ > 5:::{"name":"getlist","args":[{"sortByDate":true}]}
V/getList﹕ emitted
I/io.socket﹕ > 2::
I/io.socket﹕ > 5:::{"name":"getlist","args":[{"sortByDate":true}]}
V/getList﹕ emitted
I/io.socket﹕ < 2::
I/io.socket﹕ > 2::

最佳答案

最后我的问题不再是真正的问题了。我只是想念在我的发射中添加一个参数。所以没有人捕捉到服务器的响应。

唯一的一件事是添加:

IOAcknowledge ack = new IOAcknowledge() {
@Override
public void ack(Object... args) {
    if (args.length > 0) {
        Log.d("SocketIO", "" + args[0]);
    }
}
}

并将IOAcknowledge传递给emit方法:

socket.emit(EventList.GETLIST, ack, new JSONObject().put("sortByDate", true));

关于java - Socket.io 0.9 在 Android 上发出响应,使用 Gottox/socket.io-java-client,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28317899/

相关文章:

android - 从 Uri 到 Path 再回到 Uri

java - 如果我将套接字从主 Activity 中分离出来,为什么它会抛出 IOException?

java - 错误 : Could not find or load main class application. 主要由 : java. 引起 lang.NoClassDefFoundError: javafx/application/Application JDK 11

java - JUnit 不显示 ExpectedException 消息

android - 当阿拉伯文本带有数字时,阿拉伯文本出现反向

unix - AF_UNIX 域 - 为什么只使用本地文件名?

c - 服务器从客户端接收到一些垃圾值?

java - 遗传算法的轮盘赌选择函数

java - 在Java中获取调用特定方法的对象的hashCode()

java - 从 firebase 实时数据库中获取 JSON 数组。安卓