1. 简介
Retrofit,square退出的一个RESTful风格,底层基于OkHttp的HTTP网络请求框架。
retrofit GitHub
retrofit 文档 官方文档
okhttp GitHub
1.1 功能
1. 基于OKHTTP,遵循RESTful API 设计风格;
2. 通过注解配置网络请求参数;
3. 支持同步、异步网络请求;
4. 支持多种数据格式的解析和序列化(Gson、Json、XML、Rrotobuf);
5. 提供对RxJava的支持。
1.2 优点
1. 功能强大:支持同步、异步;支持多种数据格式的解析与序列化;支持RxJava;
2. 简介易用:以注解配置网络请求参数,采用大量设计模式使用简单;
3. 可扩展性好:功能模块高度封装、解耦彻底。
1.3 解析
1. Retrofit只是对请求参数、Header、Url进行接口的封装;接收数据后对数据进行解析。
2. 支持动态改变网络请求根目录;
1.4 同类框架对比
2. 使用
2.1 使用流程
1. 添加Retrofit库的依赖 ;2. 创建接收服务器返回数据的类 ;3. 创建用于描述网络请求的接口 ;4. 创建 Retrofit 实例 ;5. 创建 网络请求接口实例 并 配置网络请求参数;6. 发送网络请求(异步 / 同步);7. 处理服务器返回的数据。
添加依赖
compile 'com.squareup.retrofit2:retrofit:2.0.2' // Retrofit库
compile 'com.squareup.retrofit2:converter-gson:2.0.2' // GsonConverterFactory
compile 'com.squareup.okhttp3:okhttp:3.1.2' // Okhttp库, Retrofit内部有,可不用
介绍
Retrofit 网络请求接口 的注解类型:网络请求方法、标记类、网络请求参数三大类。