我尝试使用socket.io/engine.io(https://github.com/socketio/socket.io-client-java)连接到websocket服务器。我写了guthub页面描述的任何一点,但我没有连接,甚至没有记录发生了什么事情...... EVENT_CONNECTED没有被触发。我不知道是什么问题 - 也许socket.IO不能使用android 5.1UP? websocket服务器使用JS进行测试,工作正常。 有我非常简单的代码,如果你知道socket.io并且可以看看它会很棒:
Ws实施:
public class MyWsImplInIo {
private Socket socket;
public void start(){
try{
socket = IO.socket("http://192.168.1.8:8080/tmed-webserver/call");
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) {
}
});
socket.connect();
} catch(Exception e){
Log.d("WEBSOCKET", "SOME ERROR");
e.printStackTrace();
}
}
}
主要活动:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MyWsImplInIo a = new MyWsImplInIo();
a.start();
}
}