【发布时间】:2023-04-01 14:10:01
【问题描述】:
我在连接到套接字服务器时遇到问题。我目前正在做一个android项目,在这个项目中,我需要在应用程序中连接socket服务器。我目前指的是 ios 应用程序代码,以便轻松构建 android 版本应用程序。 ios 已成功连接到该套接字连接,但具有相同的 URL 和版本 android 没有。
这是我到今天为止所做的:
IO.Options opts = new IO.Options();
opts.secure = true;
try {
socket = IO.socket("http://host.com:7000/chat", opts);
} catch (URISyntaxException e) {
e.printStackTrace();
}
socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
@Override
public void call(Object... args) {
socket.emit("foo", "hi");
socket.disconnect();
}
}).on("event", new Emitter.Listener() {
@Override
public void call(Object... args) {
}
}).on(Socket.EVENT_DISCONNECT, new Emitter.Listener() {
@Override
public void call(Object... args) {
Log.d("LOG", "disconnect: ");
}
}).on(Socket.EVENT_ERROR, new Emitter.Listener() {
@Override
public void call(Object... args) {
Log.d("LOG", "Error: ");
}
});
socket.connect();
它不起作用。
这里是IOS swift代码:
var socketIO : SocketIO!
socketIO = SocketIO.init(delegate: self as SocketIODelegate)
socketIO?.useSecure = true
socketIO.connect(toHost: "host.com", onPort: 7000, withParams: nil, withNamespace: "/chat")
连接成功。
我不知道为什么它没有在android端与相同版本的库连接。
任何人都可以对此有所了解吗?
** 注意:服务器端有0.9版本的socket.io SDK。**
【问题讨论】:
-
你传入 opts.secure = true;但 URI 不安全 (http)。您是否尝试过 HTTPS,或将安全设置为 false?
-
是的,我已经尝试过了,但它不起作用@JamesPooley
标签: java android socket.io failed-to-connect