Smack XmppConnect分析


本文描述Smack中的XmppConnect  connect方法执行的步骤,讲解 XmppConnect 如何将 socket 与 packetReader和packetWriter建立关联,数据如何交互的过程。


详细过程见下图:

1、在XmppConnect中根据配置创建了 socket;

2、将socket的输入流和输出流封装在 connect 的成员变量中;

3、创建PakcetReader和PacketWriter,将connect 赋予这两个对象的实例。

4、在PacketReader中创建了一个新的readerThread线程,提供 parsePackets()方法;

5、在PacketWriter中创建了一个新的writerThread线程,提供 writePackets()方法;

6、分别启动readerThread和writerThread。


从上面的过程可以看出,connect 封装了socket ,packetReader和packetWriter封装了connect ,

packetReader和packetWriter 通过connect的reader和writer直接操作socket的输入流和输入流。


上述过程完成   XmppConnection ----> PacketReader和PacketWriter 的过渡。

下一步从PacketReader 和  PacketWriter 开始作为入口分析。



Smack XmppConnect分析_第1张图片


欢迎转载,请注明出处,谢谢!


你可能感兴趣的:(smack,AndroidPn)