使用 socket.io-client.java 库连接到 socket.io 命名空间
Connecting to a socket.io namespace using the socket.io-client.java library
我可以连接到 socket.io Web 服务,使用这个库 https://github.com/nkzawa/socket.io-client.java 没问题。不过,我不太清楚如何连接到特定的命名空间。我查看了测试代码,认为我可能需要创建一个管理器 class.
如有任何帮助,我们将不胜感激。非常感谢。
Manager manager = new Manager(new URI("http://socket.com"));
Socket socket = manager.socket("/my-namespace");
socket.connect();
以上答案对我不起作用。
实际上此代码有效,请使用最新版本的 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
我可以连接到 socket.io Web 服务,使用这个库 https://github.com/nkzawa/socket.io-client.java 没问题。不过,我不太清楚如何连接到特定的命名空间。我查看了测试代码,认为我可能需要创建一个管理器 class.
如有任何帮助,我们将不胜感激。非常感谢。
Manager manager = new Manager(new URI("http://socket.com"));
Socket socket = manager.socket("/my-namespace");
socket.connect();
以上答案对我不起作用。
实际上此代码有效,请使用最新版本的 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