Retrofit 源码分析(Builder类 源码解析 一)

说到Retrofit首先应该想到的是他的Builder 建造者模式 那么我们就从这个点开始进行源码分析  不说多了 老规矩先上图


这个构造函数 相信会使用Retrofit的人  都应该用过吧   这里显示了一个Platform.get() 方法  我们先去进去瞅一瞅


返回了一个实例  是从findFlatform这个方法里面返回的 


这里面可以看出这里应该是一个适配用的方法 判断是哪个平台 接下来我们顺着源码继续往下看


这个方法大家也不会陌生吧  用于发起http请求的客户端 需要传入Okhttp的client, 然后callFactory 里面传入的是okhttp的工厂 而它的参数缺是一个检测是否为空的方法 我们就先去这个方法里面看下


这只是一个判空的方法  接下来我们继续下面走



第一个baseUrl 方法 先是判空 然后通过HttpUrl 这个类解析 如果为空则解析失败抛出异常  反之则进入第二个baseurl这个方法里面   这个PathSegments 返回的事一个路径段列表 (这个列表 不会为空即使它包含了空字符串  源码注释)然后对这个列表进行判断  是否为空 如果为空 则抛异常 反之则返回这个URL 继续往下看


这几个方法 返回的都是一些转换工厂类 适配器啥的  不详细说 好了Builder类 源码解析 就到此为止 我们接下来去分析 Retrofit  的其他源码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,270评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,471评论 2 59
  • Retrofit 是当下android开发最流行的网络请求框架。用了Retrofit体会到了它的强大之处一直对它的...
    telyo阅读 1,683评论 0 1
  • 简介 刚接触Retrofit的时候,就写了一篇简单的使用介绍:Retrofit 2.0基本使用方法,算是对Retr...
    Whyn阅读 7,931评论 4 24
  • 搞不动她为什么生气,女人心海底针啊啊啊,迷迷糊糊去吃饭想吃杂粮煎饼结果莫名其妙吃了超级难吃的馄饨,啊啊啊我的五块钱...
    你好像很迷人阅读 1,235评论 0 0