Socket解读

Retrofit源码解读

1.重要类介绍

call:

①:创建HTTP网络请求

②:提供了同步和异步的方法 execute() 和 enqueue()

③:生成Request对象 返回请求结果对象

 

callFactory

①:Call的工厂类

②:默认直接new OkHttpClient()

③:如果需要对 ok 进行详细的设置 需要构建OkHttpClient对象 然后传入

 

CallAdapter

①:网络请求适配器 用于对Call进行转化 将默认的OkHttpClient转换为适合被不同平台来调用的网络请求执行器形式

②:retrofit会通过运行时的不同平台 然后选择不同的CallAdapter

③:Retrofit中提供了四种CallAdapterFactory

ExecutorCallAdapterFactory 默认

GuavaCallAdapterFactory

Java8CallAdapterFactory

RxJavaCallAdapterFactoy 与RxJava联合使用

③:在默认的ExecuorCallAdapterFactory会使得Call在异步调用时指定的Executor线程上执行回调

 

CallAdapterFactorise

CallAdapter的工厂

 

CallBackExecutor 切换线程

回调方法的执行器 用来将回调传递的数据传到UI线程 利用了Handler的机制

 

ConverterFactories 对数据对象进行切换

①:数据转换器工厂 该对象用于转换数据 *可以用于对数据请求 响应数据 注解参数数据进行转换

②:responseBoayConverter() *完成ResponseBody到实际的返回类型的转换

③:requesBodyConverter() *完成对象到RequestBody的构造

④:检查type如果不是自己能处理的类型 就 return null 因为可以可以添加多个 因为不能处理 return null 还会去执行遍历后面的converter

 

ServiceMethod

①:一个ServiceMethod对象对应于网络请求接口里的一个方法 用于将我们接口中的方法转换为一个Request对象

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值