强势分享!BAT大牛带你深度剖析《全网最系统Android 三大主流开源框架(附源码)》

1、OkHttp 介绍

2、OkHttp 的使用

  • 使用前准备

  • 同步 GET 请求

  • 异步 GET 请求

  • 异步 POST 请求

  • 异步 POST 方式上传文件

  • 异步 POST multipart 请求

  • 设置超时时间

  • 取消请求

3、源码

Android 主流开源框架(三)OkHttp 源码解析

1、OkHttp 的基本使用示例

  • 同步 GET 请求

  • 异步 GET 请求

2、OkHttp 源码分析

  • 创建 OkHttpClient 对象

  • 创建 Request 对象

  • 创建 Call 对象

  • 发送请求并获取服务器返回的数据

  • 同步请求

  • 异步请求

  • 拦截器

重试与重定向拦截器(RetryAndFollowUpInterceptor)

桥拦截器(BridgeInterceptor)

缓存拦截器(CacheInterceptor)

连接拦截器(ConnectInterceptor)

服务器请求拦截器(CallServerInterceptor)

  • ConnectionPool(连接池)

  • 取出相应的数据

3、总结

Retrofit 是 Square 公司研发的网络请求库,也是目前 Android 最流行的 HttpClient 库之一,越来越多的公司开始使用这个请求库,并且可以完美结合 RxJava,就像官网介绍的一样,Retrofit 是一款类型安全的网络框架,基于 HTTP 协议,服务于 Android 和 Java 语言。

主要先通过分析retrofit的使用,对于retrofit的接口、动态代理、适配工厂、数据转换等进行相应的源码和原理分析,并对于retrofit的设计模式、线程切换、Hook、MVC和MVP架构、SP跨进程问题等经典Android面试题进行分析。

Android 主流开源框架(四)Retrofit 使用详解

1、Retrofit 介绍

2、Retrofit 的使用

  • 使用前准备

  • 简单的 GET 请求

3、Retrofit 注解说明

  • 第一类:网络请求方法

  • 第二类:标记

@FormUrlEncoded 注解

@Multipart 注解

@Streaming 注解

  • 第三类:网络请求参数

@Header、@Headers 与 @HeaderMap 注解

@Body 注解

@Field 与 @FieldMap 注解

@Part 与 @PartMap 注解

@Query 与 @QueryMap 注解

@QueryName 注解

@Path 注解

@Url 注解

4、设置自定义的 OkHttpClient

5、关于 Converter

6、关于 CallAdapter

7、源码

Android 主流开源框架(五)Retrofit 源码解析

1、Retrofit 的基本使用示例

  • 同步请求

  • 异步请求

2、Retrofit 源码分析

  • 创建网络请求接口

  • 创建 Retrofit 的实例

  • 创建网络请求接口的实例,并调用接口中的方法获取 Call对象

  • 进行网络请求

3、总结

在 Android 设备上面,快速高效的显示图片是极为重要的,在过去的很长时间里,我们在如何高效的存储图像这方面遇到了很多问题,例如图片太大,但是内存却比较小,但是越来越多优秀开源框架的使用解决了我们这方面的问题,接下来我们来看看优秀的开源框架——Glide。

主要先通过分析Glide的使用,对于glide的内存和硬盘缓存、加载策略、如何进行图片网络请求等方面,并将重点放在梳理整个Glide请求的流程,最后对于bitmap、性能优化OOM和三级缓存、Lrucache等Android面试题进行分析。

Android 主流开源框架(六)Glide 的执行流程源码解析

1、Glide 的基本使用示例

2、Glide 源码分析

  • with()

Glide#getRetriever()

RequestManagerRetriever#get()

  • load()

RequestManager#asDrawable()

RequestBuilder#load()

  • into()

GlideContext#buildImageViewTarget()

RequestBuilder#buildRequest()

RequestManager#track()

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助

因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
15905653672)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 27
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值