- 7
- 0
- 约1.34千字
- 约 9页
- 2021-03-20 发布于北京
- 举报
核心之五: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请求。
您可能关注的文档
- 【自建课4】民政和养老工作简史(拓展课)解放战争时期的民政机构和养老工作解放战争时期的民政机构.pptx
- 【自建课4】民政和养老工作简史(拓展课)民政部的职能定位和基本任务古代圣贤(孔子、荀子和范仲淹)论民政.pptx
- 【自建课5】就业创业指导(拓展课)就业信息搜集大学生就业前政策.ppt
- 1+x培训与考核中心电力机车钳工SS4G型电力机车主电路.ppt
- 3D打印工艺实践光固化成型(SLA)工艺光固化成型(SLA)技术.pptx
- 3-培训认证库03-行业认证00RHCSA认证介绍RHCSA认证介绍.ppt
- 04技能训练库AutoCAD运用第八章图层管理8.2如何创建图层.pptx
- 04技能训练库Photoshop运用2.2选区框工具.pptx
- 5G网络规划与优化2.1走进天线电气性能参数2.1-3:dbm与db.ppt
- 5G网络规划与优化2.1走进天线电气性能参数2-1:dbm与db.ppt
原创力文档

文档评论(0)