Android:在 Android 应用程序中使用来自 Gottox 的 java socket.io 客户端
Posted
技术标签:
【中文标题】Android:在 Android 应用程序中使用来自 Gottox 的 java socket.io 客户端【英文标题】:Android : using java socket.io client from Gottox in android app 【发布时间】:2012-07-15 05:33:52 【问题描述】:好吧,我正在编写一个 android 应用程序,我想使用 Gottox 编写的Socket.IO-Client for Java。 github中的文档特别说该库与android兼容。
现在我的问题有点基本。 如何在 Android 应用中使用该库?
到目前为止,我已经尝试了两种方法。
我使用命令构建了该库的 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)
作为第二次尝试,我使用 socket.io 创建了一个 java 项目 我的 Eclipse 中的库源代码。然后我将该项目导出为 使用
的 jar 文件RIGHT_CLICK->export->java->Jar File
然后我使用该 jar 文件添加到我原来的 android 项目 与我在方法 1(添加外部 jars)中尝试的方式相同。这次我也能够 编译和构建,但在同一行得到相同的异常 代码。
现在有人成功地在 android 中使用相同的库了吗?它是如何实现的?
【问题讨论】:
【参考方案1】:我自己搞定了..
使用我在问题中提到的第一种方法,你会得到一个罐子 路径中的文件
PATH_TO_SOCKETIO_JAVA/jar/socket.jar
现在在您的 android 项目中,创建一个名为“libs”的文件夹(如果是
还没有)
将该 jar 文件复制到“libs”文件夹。
进入eclipse并刷新android项目。
我仍然不确定为什么使用项目属性中的“添加外部 Jars”按钮添加 jar 文件不起作用。两者都将库添加到项目中吗?
【讨论】:
添加外部 jar 不应包含在构建环境中。它应该只在从 Eclipse 工作时工作。但是一旦你把它放在别的地方,它就不会包括罐子了。为此,请使用“添加 jar”方法。 coderanch.com/t/444029/vc/… 你的@Krishnabhadra。我相信你能够解决你的问题。我想问你一个问题。您是否能够在您的 android 应用程序中从您的服务器获取消息?如果是这样,你是这样做的吗?如果你能帮助我,我将不胜感激。如果你有时间,请看看我在堆栈溢出中的问题。 这里是链接***.com/questions/28270345/… 这个问题加1以上是关于Android:在 Android 应用程序中使用来自 Gottox 的 java socket.io 客户端的主要内容,如果未能解决你的问题,请参考以下文章
在 Android Studio 中使用 ActivityInstrumentationTestCase2 在横向测试 Android 应用程序
我可以在 sencha 应用程序(Android)中使用 android AsyncTask
Android:在 Android 应用程序中使用来自 Gottox 的 java socket.io 客户端