Android核心技术与开发5.2.1原理及使用5.2.1.OKHttp框架原理及运用.pptxVIP

  • 7
  • 0
  • 约1.34千字
  • 约 9页
  • 2021-03-20 发布于北京
  • 举报

Android核心技术与开发5.2.1原理及使用5.2.1.OKHttp框架原理及运用.pptx

核心之五:Android网络通信 --OKHttp框架原理及运用 OKHttp框架介绍; OKHttp框架的使用。 了解OKHttp框架的基本信息; 掌握使用OKHttp框架实现Android中的网络通信。 了解OKHttp框架与HttpClient的区别; 了解使用OKHttp框架的优势。 1、OKHttp框架介绍 OKHttp简介 OKHttp的功能和优势 OKHttp框架是一个处理网络请求的开源项目,是Android当前最火热的网络框架,由移动支付Square公司贡献,用于替代HttpUrlConnection和Apache HttpClient(android API 23 6.0中已移除HttpClient); OKHttp框架支持一般的网络get、post请求,支持基于http的文件上传与下载,支持session保持等功能; GitHub地址:/square/okhttp OKHttp框架的功能: 支持PUT,DELETE,POST,GET等网络请求; 支持文件的上传下载; 支持图片加载(图片大小自动压缩); 支持请求回调,直接返回对象、对象集合; 支持session的保持。 OKHttp框架的优势: 支持HTTP2/SPDY(SPDY是Google开发的基于TCP的传输层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验); Socket自动选择最好路线,并支持自动重连,拥有自动维护的socket连接池,减少握手次数,减少了请求延迟,共享Socket,减少对服务器的请求次数; 基于Headers的缓存策略减少了重复的网络请求; 拥有Interceptors轻松处理请求与响应(自动处理GZip压缩)。 HTTP Get请求的实现 HTTP Post请求的实现 添加OkHttp3的依赖及Android网络权限; 通过以下步骤发送一个异步GET请求: 创建一个OkHttpClient对象; 通过Builder模式创建一个Request对象,参数必须有URL参数,可以通过Request.Builder设置更多的参数比如:header、method等; 通过Request对象构造得到一个Call对象,Call对象有execute()和cancel()等方法; 以异步的方式执行GET请求,调用call.enqueue()方法,将Call加入调度队列,任务执行完成会在Callback中得到结果。 同样需要添加OkHttp3的依赖及Android网络权限; 通过以下步骤发送一个异步POST请求: 创建一个OkHttpClient对象; 通过new FormBody()调用build()方法,创建一个RequestBody对象,可以用add()方法添加键值对 ,FormBody是RequestBody的子类; 创建一个Request对象,设置URL地址,将RequestBody作为post()方法的参数传入; 创建一个call对象,参数就是Request对象; 请求加入调度,重写回调方法。 1、了解OKHttp框架的基本知识; 2、OKHttp框架使用的两种方式。 使用OKHttp框架实现GET、POST请求。

文档评论(0)

1亿VIP精品文档

相关文档