如何在Eclipse的Android项目中包含Smack 4.1?
就像您将在Eclipse Android项目中包括任何其他Java库一样。通过将
.jar文件放在
libs/目录中,Eclipse的Android插件
和 Android Ant构建系统将使它们可用于项目的类路径,并将它们包括在结果中
.apk。
Smack
4.1的特点是,它高度模块化。如果要在Android上使用功能齐全的Smack,则需要大约11个
.jar文件。现在,您可以通过gradle使用Android
Studio,这种方式包括添加Smack,就像添加
dependencies { compile "org.igniterealtime.smack:smack-android:4.1.0-rc1" compile "org.igniterealtime.smack:smack-tcp:4.1.0-rc1" // optional features compile "org.igniterealtime.smack:smack-android-extensions:4.1.0-rc1"}并且gradle将解决传递依赖。
但是 ,Android Studio或确切地说是Android gradle插件不支持带有源附件的下载和调试1。这是使用开源库时明确想要的。
例如,这就是我自己不使用gradle插件的原因之一。那时我无法开发Smack(我也喜欢Eclipse,但这是另一回事)。
因此,我们将在Android项目中与Eclipse / Ant合作。Smack 4.1自述文件告诉您使用MavenToAndroidAnt
Python3脚本,该脚本将自动下载工件并在更新时删除旧的工件。如果将其挂接到构建过程中,它几乎与使用gradle一样好,
而且还支持源附件 。
当然,您也可以
.jar手动添加11个文件,但是谁愿意这样做,并且在其源存储库中有二进制文件?
Android的代码会保持不变吗?
是的,从Smack
4.1开始,Smack是Smack。因此,无论您是否使用Android,都可以引用相同的javadoc。请注意,aSmack也是如此,因为它只是Smack到Android的移植。
1:如果我错了,请纠正我,但是上次尝试不可行。同时,情况可能会好转。



