socket.io客户端到socket.io服务器的连接问题0.9.6



我的socket.io安卓代码有问题。

服务器使用socket.io 0.9.6在安卓系统上,我使用的是来自nkzawa 的socket-io-client-0.1.3.jar和engine-io-client.0.2.3.jar

在连接到myChannel之后,发射myConnect。之后,如果某个东西随着新值发生了变化,我总是会收到一条"something_changed"的消息。我在js中的版本运行良好,但在android上我只得到:

EVENT_CONNECT_ERROR: com.github.nkzawa.engineio.client.EngineIOException: xhr poll error

有什么办法吗?

socket = IO.socket(WEBSOCKET + "myChannel");
socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
    @Override
    public void call(Object... args) {
        socket.emit("myConnect", userinfo);
    }
    }).on(Socket.EVENT_CONNECT_ERROR, new Emitter.Listener() {
    @Override
    public void call(Object... arg0) {
        Log.e("EVENT_CONNECT_ERROR", arg0[0].toString());
    }
    }).on("something_changed", new Emitter.Listener() {
    @Override
    public void call(Object... args) {
        JSONObject obj = (JSONObject) args[0];
        Log.i("something_changed", obj.toString());
    }
});
socket.connect();

我也遇到了同样的问题。原因是互联网访问权限。

在清单中添加internet权限。

<uses-permission android:name="android.permission.INTERNET" ></uses-permission>

它应该起作用。

相关内容

  • 没有找到相关文章

最新更新