我尝试使用Smack库,但我得到的是:
05-07 04:28:43.299 2958-2958/g.d.allinonechat E/dalvikvm﹕ Could not find class 'javax.naming.directory.InitialDirContext', referenced from method org.jivesoftware.smack.util.dns.JavaxResolver.<clinit>
通过搜索谷歌我发现,谷歌不会让一些JRE课程在Android上工作,所以......这里没什么可做的
试过aSmack,我正在使用windows,尝试在Linux Ubuntu上编译它,但它不会编译
./build.bash line 142 /root/Desktop/asmack-master/version-tags/4.0.0-rc2-SNAPSHOT-2014-04-27.tag: No such file or directory
该文件不存在,但我尝试下载压缩文件两次,它不在那里也不是动态生成的。
我可以使用其他库来连接我的Openfire服务器吗?
谢谢。
答案 0 :(得分:0)
关于你自己的aSmack的构建;我在构建脚本中遇到了完全相同的问题。
我发现目录releases
和version-tags
丢失了。在您的配置中,我建议执行:
mkdir -p /root/Desktop/asmack-master/version-tags/
mkdir -p /root/Desktop/asmack-master/releases/
cd /root/Desktop/asmack-master/build.bash
./build.bash
另外,请不要忘记为local.properties
创建ant
文件,以便构建最终jar
。
cp /root/Desktop/asmack-master/local.properties{.example,}
需要在local.properties
中设置Android-SDK的路径。在我的环境中,它看起来像这样:
sdk-location=${user.home}/android-sdk-linux/
然后,您可以在jar
目录中找到最终的releases
。
另一种方法是将已预先构建的jar
aSmack http://asmack.freakempire.de/用作aSmack GitHub page suggests。
编辑:aSmack项目中已修复了现有目录的问题。构建脚本将创建它们以防它们丢失。