smack是一个用于和XMPP服务器(比如openfire)通信的类库,由此可以实现即时通讯和聊天。
smack简单易用,并且有十分强大的API,只需三行代码就可以向用户发关文本消息:
//实际应用中需要优化,此处只做为smack的说明 XMPPConnection connection = new XMPPConnection("jabber.org"); connection.login("mtucker", "password"); connection.createChat("jsmith@jivesoftware.com").sendMessage("Howdy!");
smack的特点:
- 1)使用者不需要进行包级别的编码。
- 2)使用者不需熟悉XMPP XML格式。
- 3)提供了简单的设计以进行通讯,允许在每个消息中设置任意数量的属性,包括java对象。
- 4)Apache许可下的开源类库。
在以前,smack在PC上可以工作的很好,功能也很强大,但在Android平台上有一些问题。而导致这些问题的原因是Android精简了Java的类库,以至smack使用的部分类库在Android平台上无法找到,所以smack不能直接在Android平台上使用,但在2010年初,有人在code.google.com网站上发布了一个asmack,其中A库就代表Android中的A,也就是说,这个版本是smack的Android版本。
现在smack的最新版本已经支持Android了!所以asmack已经不推荐使用了。
smack源码:https://github.com/igniterealtime/Smack
asmack源码:https://github.com/Flowdalic/asmack
版权声明:部分文章、图片等内容为用户发布或互联网整理而来,仅供学习参考。如有侵犯您的版权,请联系我们,将立刻删除。