美文网首页Android开发Android知识Android开发经验谈
对Xabber源码解析的过程(1)工程目录分析

对Xabber源码解析的过程(1)工程目录分析

作者: 跑步与开车 | 来源:发表于2016-04-20 10:08 被阅读190次

    1.
    想要看懂Xabber的源码,要首先了解的知识

    JAVA--IM--XMPP基础知识--Smack包

    2.

    下载好Xabber之后放在AndroidStudio里面,配置gradle直到能运行,下载的时候可能会缺少MemorizingTrustManager和Otr4j这两个文件夹,单独下载即可

    目录结构:Xabber-android工程下面代码目录xabber其中有三个依赖项目,包括emojicon,MemorizingTrustManager,otr4j,主要代码在src/main/java目录下

    3.

    java目录下有两个包,一个是xmpp一个是android

    xmpp是对xmpp一些特有属性的封装,例如JID IQ Presence URI Message等供android包下面的类来调用

    所以主要代码卸载android包下面

    4.

    android包下面包括/data,/receiver,/service,/ui,/utils

    一些顾名思义能看出来的receiver,service,ui,是android常见的组件,utils下面包含三个类看上去很简单的样子,先不分析它

    5.

    然后就剩下一个/data了,点开吓一跳,又是好多包,看上去看麻烦的样子,挨个儿点了一边都看不大懂,

    6.

    看了Smack和XMPP的基础知识之后,再反回来看,看到了很多熟悉的字样,

    --account猜想是Smack里面的accountManager对账号管理的工具吧,

    --connection猜想是Smack里面的XMPPConnection吧

    --entity猜不出来

    --extension目测是Smack-extension这个包下面的,对XMPP的一些扩展试用

    --intent 看不懂看上去也不像android的intent

    --message估计是Smack里面的Message

    --notification应该是android通知

    --roster猜想是Smack里面的Roster

    7.

    所以关于Smack的就锁定在以下几个目录里/account,/connection,/extension,/message,/roster

    根据学习Smack的时候的知识来决定应该从哪个开始分析

    决定从conenction分析,因为要想完成即使通信,首先第一步是建立一个连接

    相关文章

      网友评论

        本文标题:对Xabber源码解析的过程(1)工程目录分析

        本文链接:https://www.haomeiwen.com/subject/inuzlttx.html