Java Android客户端Socket.io实现与1.0版兼容-初学者

Java Android客户端Socket.io实现与1.0版兼容-初学者,java,android,node.js,socket.io-1.0,Java,Android,Node.js,Socket.io 1.0,谢谢你阅读我的问题。(请为我糟糕的英语道歉) 我正在尝试使用socket.io开发一个简单的android原型。 我有一个带有socket.io的server node.js(正在运行),现在我正在开发客户端(存在问题) 我已在以下位置下载了zip文件: 在Eclipse上,我右键单击projet/buildpath/addexternalarchive 我选择了下载的文件。 客户端代码: 包com.example.temp_测试 import java.net.URISyntaxExcepti

谢谢你阅读我的问题。(请为我糟糕的英语道歉)

我正在尝试使用socket.io开发一个简单的android原型。 我有一个带有socket.io的server node.js(正在运行),现在我正在开发客户端(存在问题)

我已在以下位置下载了zip文件: 在Eclipse上,我右键单击projet/buildpath/addexternalarchive 我选择了下载的文件。 客户端代码:

包com.example.temp_测试

import java.net.URISyntaxException;



import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final Socket socket;
        try {
            socket = IO.socket("X.X.X.X:8080");
            socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {

                  @Override
                  public void call(Object... args) {
                    socket.emit("message", "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 (URISyntaxException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}
当然,X.X.X.X是一个IP地址。 现在我有一些红线,因为eclipse找不到IO类

我已经尝试过一些教程,比如:(我有一些崩溃),很多其他的都太旧了,或者不兼容1.0

我只是一个使用socket.io android的初学者。 因此,如果有人能帮助我,我只想知道如何安装好的软件包而不会崩溃,这将是非常感激的,我可以自己做其余的事情


提前谢谢

我也在讨论同样的问题。我尝试了Gotox,但我们在nodejs服务器上也有1.0版,所以没有成功。我刚刚发现,在Android上实现socketio客户端是一种更简单、更稳定的方法。我明天会试试这个,也许你也可以试试,我们可以分享我们的发现。这提供了jar文件,所以至少你不必经过maven路径。

我刚刚看到你的帖子,这是一篇老帖子,但我的答案可能会对其他像我这样的初学者有所帮助


socket.io.client需要engine.io-client库。源代码的url在这里:

您确定jar与nodejs服务器兼容吗?嘿。我没有时间尝试它,但它应该与NodeJSVersion1.0+兼容,正如我在stackoverflow上的文章中读到的那样。如果你正在尝试,那么一定要给我反馈。我们决定在NodeJs服务器上返回socketiov0.9,因为我已经尝试并测试了v1.0.x版本的兼容性问题,并且该版本的库运行良好。