Android:在Android应用程序中使用来自Gottox的java socket.io客户端

时间:2012-07-16 11:18:23

标签: java android socket.io

好吧,我正在编写一个Android应用程序,我想使用Gottox编写的Socket.IO-Client for Java。 github中的文档特别说该库与android兼容。

现在我的问题有点基础了。 如何在Android应用中使用该库?

到目前为止,我尝试了两种方法。

  1. 我使用命令构建了该库的jar文件(如上所述) 在图书馆的文档中)

    cd $PATH_TO_SOCKETIO_JAVA
    ant jar
    ls jar/socketio.jar
    

    我在文件夹中有一个漂亮的jar库。我把罐子加到了我的身上 项目使用

    RIGHT_CLICK->Properties->Java Build Path->Add External Jars
    

    然后我用

    连接
    SocketIO socket = new SocketIO("http://"+ip+":"+port+"/");
    

    我能够编译和构建我的应用程序,没有任何错误。但是当我跑步时,我在上面发布的那条线上有一个例外。

    java.lang.NoClassDefFoundError: io.socket.SocketIO
        at com.research.socketioresearch.LoginActivity.connectToSocketIO(LoginActivity.java:122)
        at com.research.socketioresearch.LoginActivity$1.handleMessage(LoginActivity.java:113)
    
  2. 作为第二次尝试,我使用socket.io创建了一个java项目 我日食中的库源代码。然后我将该项目导出为 jar文件使用

    RIGHT_CLICK->export->java->Jar File
    

    然后我将jar文件添加到我原来的android项目中 我在方法1(添加外部罐子)中尝试的方式相同。这次我也能够 编译和构建,但在相同的行中获得相同的异常 代码

  3. 现在有人在android中使用相同的库有成功吗?怎么做?

1 个答案:

答案 0 :(得分:1)

嗯,我自己开始工作..

  1. 使用我在问题中提到的第一种方法,你会得到一个罐子 路径中的文件

    PATH_TO_SOCKETIO_JAVA/jar/socket.jar
    
  2. 现在在你的android项目中,创建一个名为“libs”的文件夹(如果是的话) 还没有那里)
  3. 将该jar文件复制到'libs'文件夹。
  4. 转到eclipse并刷新android项目。
  5. 我仍然不确定为什么在项目属性中使用“添加外部JAR”按钮添加jar文件不起作用。两者都将库添加到项目中吗?