网络通信 | 青训营笔记

137 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第4天

网络通信

网络请求框架对比

如下图所示,HttpURL Connection是自带的请求方式,使用成本较高,需要自己分装,使用场景是只有少量网路请求的工具类APP;Volley是谷歌公司网络请求框架,不支持输入输出流,占内存,使用场景小;OkHttp使用成本较高,添加一些拦截参数;Retrofit基于OkHttp的二次封装。

QQ图片20220804204229.jpg

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网络库的动态切换
  • 支持网络拦截配置

心得

网络通信这块我其实不是很擅长,所以听起来有一点点的困难,,注解这一块了解的也不是很到位需要课后查些资料去学习。