2014-10-11 5 views
1

안드로이드 용 socket.io 코드에 문제가 있습니다.socket.io-client에서 socket.io 서버로의 연결 문제 0.9.6

서버는 안드로이드에 socket.io 0.9.6 내가 소켓 IO-클라이언트 0.1.3.jar 엔진-IO-client.0.2.3.jar nkzawa

에서 후를 사용하고 사용 myChannel a myConnect에 대한 연결이 방출됩니다. 이후 뭔가 새로운 값으로 변경하면 항상 "something_changed"메시지가 나타납니다. js의 제 버전은 정상적으로 작동하지만 안드로이드에 대해서만 얻을 수 있습니다.

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(); 

답변

0

나는 같은 문제에 직면했다. 그것은 인터넷 액세스 권한으로 인해 발생했습니다.

매니페스트에 인터넷 사용 권한을 추가하십시오.

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

이 작동합니다.