填空题
Retrofit2的方法之所以可以返回Call<T>是因为其有两个默认的CallAdapter实现,DefaultCallAdapterFactory和ExecutorCallAdapterFactory,Retrofit2会自动判断当前运行的平台,如果发现是Android平台则使用(),其他情况使用另一个。
ExecutorCallAdapterFactory
判断题 那么CallAdapter在retrofit2中是如何发挥作用的呢,关键代码在HttpServiceMethod<ResponseT,ReturnT>类中的invoke()方法中,程序每发起一个HTTP请求时,首先就会调用这个方法。
判断题 retrofit接口里面还有一个内部类Factory,我们就是通过这个factory里的get方法获得相应的Adapter的。
判断题 retrofit主要用途是检查我们定义的方法返回值里面那个泛型参数的类型是否正确,例如Call是正确的,而Call则是正确的。adapt()负责适配。