注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

韩国恺的博客

hanguokai.com

 
 
 

日志

 
 

Smack 简介和调试  

2010-02-25 14:56:56|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
Smack 库是java的 xmpp 客户端库,用来和 xmpp server 端通信,类似于Java MSN Messenger Library (JML)相对于 MSN 协议。是一个高层概念的功能支持库,简单易用,不需要在Packet层面编程(但也支持Packet层面编程),不需要你熟悉XMPP的xml格式。支持单人和多人对话。

由3个包构成:
smack.jar 仅用来支持xmpp核心协议
smackx.jar 支持扩展协议,workgroup等概念的支持都在这个包里
smackx-debug.jar 提供一个图形环境的调试器,可以观察所有进出的数据包。如果在classpath中包含这个jar文件,并且启用了debug模式,那么smack自动弹出这个GUI调试窗口。所以想调试底层网络协议可以启用这个模式。不管是客户端还是服务器端调试,因为客户端和服务器端的数据流是一样的,只是方向相反而已。启用debug模式有两种:
1.api中启用:XMPPConnection.DEBUG_ENABLED = true;
2.java系统属性启用:java -Dsmack.debugEnabled=true SomeApp

一般的功能过程包括:
登录,建立连接,管理连接
发出对话,监听收到的对话,包括多人对话
花名册管理和状态管理,如好友的状态,自己的状态
支持同步和异步两种模式处理接收数据包,和包过滤器(Filter)功能
支持一种将java属性附加到xml数据包中的机制,也就是在xml的某个元素中增加一个xml属性(也就是键值对)
支持底层直接读写Packet
因为xmpp是可扩展的协议,所以smack本身也提供了Provider Architecture来支持使用者自定义的扩充。
  评论这张
 
阅读(2813)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018