码迷,mamicode.com
首页 > 系统相关 > 详细

XMPPclient库Smack 4.0.6一个版本的开发

时间:2015-06-07 18:53:18      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:

XMPPclient库Smack 4.0.6版开发之中的一个

作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

一、Smack库概述

Smack是一个开源、易用的XMPP/Jabberclient库,它使用Java语言开发,由Jive Software开发。

Smack的长处是编程简单。

Smack的缺点是其API并不是为大量并发用户设计,每一个客户都要1个线程,占用资源相对较,因此用Smack做模拟測试时,1台机器仅仅能模拟有限(数千个)客户。

截止2014年11月27日,Smack库已经发展到4.0.6版。

最新的好消息是Smack在4.1.0版后将直接支持Android系统,而无需再使用曾经的Smack移植版aSmack库了。

Smack库源代码托管于GitHub,主页见: https://github.com/igniterealtime/Smack/



二、Smack 4的改变

Smack库从3.4版发展到4.0.x版后,其API有较大的变化,主要有:

1、把Connection类重命名为XMPPConnection类

XMPPConnection类是XMPPTCPConnection类和XMPPBOSHConnection类的父类。

2、把各种Provider类进行了分包

3、keep-alive(持久连接)机制从smack-core库移到了smack-extensions库

keep-alive机制如今由PingManager类提供。

4、PrivacyList类的toString()方法重命名为getName()

5、当Chat实例的全部引用都撤掉后,应该调用Chat.close()方法

否则Chat对象会有内存泄露的隐患,直到ChatManager对象被垃圾回收器回收后内存泄露隐患才会消失。

6、ServerTrustManager类被移除了

假设要使用带SSL认证的XMPP,你仅仅需提供自己的SSLContext对象给ConnectionConfiguration对象就可以。

7、Packet.setProperty()从smack-core库移到了smack-extensions库

其API如今能够在org.jivesoftware.smackx.jiveproperties包中找到。

8、Connection.getAccountManager()方法如今改成了AccountManager.getInstance(XMPPConnection)方法

9、异常API做了改进

10、ToContains过滤器被移除了


XMPPclient库Smack 4.0.6一个版本的开发

标签:

原文地址:http://www.cnblogs.com/lcchuguo/p/4558830.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!