retrofit2源码及请求流程分析
1.创建Retrofit对象
2.创建Service接口
retrofit.create方法为Service创建动态代理,可以说是Retrofit的核心。
3.创建调用API的Call对象
1.当调用Service中定义的方法时,会调用retrofit.create创建的动态代理,调用Proxy._newProxyInstance_中InvocationHandler的invoke方法,创建流程如下:
4.发起网络请求
请求网络的流程如下:
异步请求和同步类似,这里就不分析了。