这是我参与「第四届青训营 」笔记创作活动的第4天
网络通信
网络请求框架对比
如下图所示,HttpURL Connection是自带的请求方式,使用成本较高,需要自己分装,使用场景是只有少量网路请求的工具类APP;Volley是谷歌公司网络请求框架,不支持输入输出流,占内存,使用场景小;OkHttp使用成本较高,添加一些拦截参数;Retrofit基于OkHttp的二次封装。
Retrofit介绍
Retrofit是目前Android平台上,可以说是最热门的网络请求封装框架,是对OkHttp的一个封装。
Retrofit快速使用
1.Retrofit库的引用
2.创建用于描述网络请求的接口
3.使用Retrofit 实例发起网络请求
Retrofit使用介绍
1.在需要用到Retrofit接口的module中新增依赖。
2.创建用于描述网络请求的接口
- 接口类名:可自定义,尽量和这类请求的含义相关
- 函数名:可自定义,需要能识别该接口的作用,该interface里可以增加多个不同的函数(getUserName)
- @GET注解:用于指定该接口的相对路径,并采用Get方法发起请求
- @Path注解:需要外部调用时,传入一个uid,该uid会替换@GET注解里相对路径的{uid}
- 返回值Call:这里用ResponseBody,我们可以直接拿请求的String内容如果要自动转为Model类
3.发起网络请求
- 创建Retrofit实例
- 创建请求接口的实例,并获取到Call实例
- 调用call.enqueue进行异步请求
- 处理返回的数据
注解
需要了解常用的注解,注解很多需要理解才会方便使用
TTNet
有以下优点:
- 具有Retrofit的优点
- 支持多个Http网络库的动态切换
- 支持网络拦截配置
心得
网络通信这块我其实不是很擅长,所以听起来有一点点的困难,,注解这一块了解的也不是很到位需要课后查些资料去学习。