关于Okhttp(二)-如何下载查看源码

作者: lowett | 来源:发表于2017-02-21 15:16 被阅读115次

    相信看过上篇对其有了基本的认识,同时也知道如何使用,是不是对它的源码实现也产生了浓厚的兴趣呢(不喜欢源码的程序员不是好码农哦),不是有位大神说过学习编码的最好途径就是:Read the fucking source code。工欲善其事,必先利其器。今天我们先把源码弄下来吧!

    不知道你是否尝试过下载源码,反正楼主试过,一开始真心不知道怎么弄它的源码,后来慢慢折腾才摸出了门路。下面就告诉给大家,免得走太多弯路。

    做安卓的可能都认为Okhttp3是一个安卓工程(楼主一开始就这样认为)其实不是的,它是个地地道道的Java工程,你不能直接把它导入到Android Studio中(除非你自己建个工程,拷贝源码到到工程里,楼主就这么干过😄,太傻了)。

    IDE

    查看此源码的最好工具是IntelliJ IDEA,Eclipse,MyEclipse也可以但是个人认为不是很方便,推荐使用IntelliJ IDEA省事、省心、强大。

    下载、安装IntelliJ IDEA请自行研究,没有什么难的。

    下载源码

    源码是在Github上,所以需要先安装git(或者下载压缩包)。

    Github源码地址:https://github.com/square/okhttp

    压缩包地址:https://github.com/square/okhttp/releases

    Git客户端工具建议使用sourceTreehttps://www.sourcetreeapp.com/

    如何下载此处不在赘述。

    导入源码

    打开IDEA(第一次需要选在是否导入已存在的配置,按需选择),点击Import Project—进入源码现在目录—点击pom.xml文件,一直next下去—finish(如需修改工程名字,在finish界面修改即可)

    等待IDEA导入所需的依赖包

    此过程有点长

    导入成功后是这样的:

    此时如果去编译okhttp工程会报的错误:

    这是因为okhttp的版本号是自动生成的,Version.java不在src文件夹下,我们要自动添加。

    step:选中okhttp工程,右键-open module settings

    再次编译,即可通过。

    如果还有错,那就是AndroidPlatform.java有问题,主要是Android sdk没有引入,此处使用的是4.1.1.4的sdk,在pom.xml中可以查看。如果实在无能导入(原因你懂的)把AndroidPlatform.java中的

    public void log(int level, String message, Throwable t) {
        // 里面的语句注释掉,此处使用了Log,没有任何影响,再次编译即可
    }
    

    项目结构

    主工程
    1. mockwebserver — 模拟服务器,有用
    2. okhttp — 源码
    3. okhttp-logging-interceptor — 日志拦截器,可以自己实现的
    4. okhttp-urlconnection — 连接方式,用不上

    我们主要研究的是okhttp源码,负责项目mockwebserver,其他目前没用。

    到此,已经完成了,源码的下载任务,当然此项目还有很多值得研究的地方,读者可自行研究。

    总结

    源码下载不是什么难事,主要是没弄过会有很多弯路,在此讲一讲,给大家引导一下,觉得还是有必要的,接下来就正式进入,源码研究了,敬请期待!

    系列文章

    1、关于Okhttp(一)-基本使用

    2、关于Okhttp(二)-如何下载查看源码

    3、关于Okhttp3(三)-请求流程

    相关文章

      网友评论

        本文标题:关于Okhttp(二)-如何下载查看源码

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