使用socket.io-client.java库连接到socket.io命名空间

时间:2015-07-19 18:35:01

标签: java android socket.io

我可以使用此库https://github.com/nkzawa/socket.io-client.java连接到socket.io Web服务没问题。我不知道如何连接到特定的命名空间。我查看了测试代码,并认为我可能需要创建一个Manager类。

任何帮助将不胜感激。非常感谢你。

2 个答案:

答案 0 :(得分:16)

Manager manager = new Manager(new URI("http://socket.com"));
Socket socket = manager.socket("/my-namespace");
socket.connect();

答案 1 :(得分:0)

以上答案对我不起作用。

实际上此代码有效,请使用最新版本的socket.io客户端版本: https://github.com/socketio/socket.io-client-java

将此添加到您的build.graddle中:

compile ('io.socket:socket.io-client:1.0.0') {
    // excluding org.json which is provided by Android
    exclude group: 'org.json', module: 'json'
}

然后,您可以使用以下代码段连接到您的命名空间:

Socket socket;
try {
        socket = IO.socket(socket_host + "/your_namespace");
    } catch (URISyntaxException e) {
        Log.d("ERROR :", e.toString());
    }
socket.connect();

检查此github问题,其中有更多说明: https://github.com/nkzawa/socket.io-android-chat/issues/8