首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
中玉
掘友等级
Android开发
代码是最好的老师,面向源码编程。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
176
文章 172
沸点 4
赞
176
返回
|
搜索文章
最新
热门
Okhttp 拦截器
拦截器分类 应用程序拦截器 网络拦截器 源码分析 调用流程图 每个拦截器的作用: 参考: 慕课网 OKHttp开源框架学习四:拦截器
okhttp 请求源码解析
同步请求 总结: 创建OkHttpClient和Request对象 将Request封装成Call对象 调用Call的execute()发送同步请求 同步执行流程 第一步,创建一个OkHttpClie
Butterknife
工作原理 运用APT技术,自定义注解,编译是扫描注解,解析注解生成对应java代码。 调用ButterKnife.bind(this)方法的时候,将ID与对应的上下文绑定在一起。 源码解析 总结: 通
CallServerInterceptor
宏观流程 总结: 写入请求头。 如果请求头的Expect: 100-continue时,只发送请求头。 写入请求体 发送请求 解析响应头, 解析响应体。 返回响应。 源码解析 参考: okhttp源码
ConnectInterceptor
源码解析 总结: 创建HttpCodec 创建RealConnection 参考: OkHttp源码解析6:ConnectInterceptor流程
CacheInterceptor
源码解析 没有缓存和禁止使用网络 直接返回504 有缓存禁止使用网络直接返回缓存 请求网络,如果后台内容没有改变,返回缓存 后台内容改变缓存后台返回的内容,并返回。 Cache.java 通过Disk
RetryAndFollowUpInterceptor
宏观流程 源码解读 总结: 初始化了连接的对象(StreamAllocation,但是比没有真正建立连接,只是初始化了对象)(前置拦截); 通过RealInterceptorChain,再调用下一个拦
BridgeInterceptor
源码 报文头 添加请求头 Cookie管理 Gzip压缩 常见的HTTP报文头属性 Accpet 告诉服务端,客户端接收什么类型的响应 Referer 表示这是请求是从哪个URL进来的,比如想在网上购
OKHTTP连接中三个"核心"
StreamAllocation 属性 构造函数 newStream 先判断StreamAllocation中的连接是否可用,可用直接返回。 根据已知的address在connectionPool里面
ViewStub
构造过程 懒加载过程 可以多次inflate()吗 在第一次调用 inflate() 后,ViewStub 会从控件层级结构中移除,不再有父控件。具体查看inflate方法。 总结: ViewStub
下一页
个人成就
文章被点赞
226
文章被阅读
67,083
掘力值
2,432
关注了
40
关注者
18
收藏集
2
关注标签
9
加入于
2017-12-13