Retrofit简介

原创 2017年01月03日 14:51:28

Retrofit

Retrofit

Retrofit 是Square的一个开源网络访问工具类;这里结合官方文档来介绍一下他的具体使用。官方文档地址

导入Retrofit 到Android Studio项目中去

在项目中的app Mudel中的build.Gradle文件中添加依赖:

compile 'com.squareup.retrofit2:retrofit:2.1.0'

加载之后就可以使用Retrofit了。

Retrofit的使用

  • 创建一个接口将网络访问的API写在里面,这个接口的命名按照官方文档的格式后缀一Service结尾;

    public interface HttpService{
        @GET("/")
        Call<String> getBaidu();
    
    }
    
  • 创建Retrofit实例,代码如下:

    Retrofit retrofit =new Retrofit.Builder()  //返回Retrofit对象
                                .baseUrl("http://www.baidu.com/")//设置根地址
                                .addConverterFactory(GsonConverterFactory.create())//解析拿到的数据
                                .build();//完成创建
    

    注意baseUrl必须是一“/”结尾否则要报错。

  • 利用Retrofit实例闯将一个实现了步骤1的接口的文档;通过service调用相应的方法得到一个Call对象。

    HttpService service = retrofit.create(HttpService.class);
    Call<String> baidu = service.getBaidu();
    
  • 然后同步或异步的执行Call对象访问网络;


Call instances can be executed either synchronously or asynchronously. Each instance can only be used once, but calling clone() will create a new instance that can be used.

以上是官方文档对Call对象的一段描述,其大概意思是Call对象能同步或异步的发起网络请求但是每个对象只能发起一次请求,可以通过clone()方法创建新的实例继续发起请求。

备注:以下是Square提供的常用数据解析裤:

  • Gson: com.squareup.retrofit2:converter-gson
  • Jackson: com.squareup.retrofit2:converter-jackson
  • Moshi: com.squareup.retrofit2:converter-moshi
  • Protobuf: com.squareup.retrofit2:converter-protobuf
  • Wire: com.squareup.retrofit2:converter-wire
  • Simple XML: com.squareup.retrofit2:converter-simplexml
  • Scalars (primitives, boxed, and String): com.squareup.retrofit2:converter-scalars
版权声明:本文为博主原创文章,未经博主允许不得转载。

Retrofit使用简介

Retrofit
  • baidu_20596139
  • baidu_20596139
  • 2016年08月19日 10:38
  • 1405

一篇文章带你走通 OkHttp+Retrofit+Rxjava

一篇文章带你走通 OkHttp+Retrofit+Rxjava@(Android)[android]一篇文章带你走通 OkHttpRetrofitRxjava 参考网站 OkHttp部分 OkHttp...
  • u013647382
  • u013647382
  • 2017年02月18日 22:12
  • 5983

Android 网络框架 Retrofit2.0介绍、使用和封装

前言 时至今日,Android的网络框架不再像之前那么到处都是,随着Google把 HttpClient直接删掉,似乎意味着Android越来越成熟。网络框架中的佼佼者Volley也不再那么光鲜,取...
  • u014099894
  • u014099894
  • 2016年05月20日 20:44
  • 14856

Retrofit的使用教程(一) 1.9

转自:http://www.cnblogs.com/laiqurufeng/p/4483658.html 这篇教程基于retrofit1.9版本和android平台. 以下部分代码...
  • u010212173
  • u010212173
  • 2017年05月25日 14:52
  • 307

Retrofit——简介

实下,当前开发app,网络框架已经不再是AsyncTask、Volley。很多开发者开始用Retrofit、OKHttp等。我们要跟上技术潮流。 笔者本着边学习边分享的态度,开始讲Retrofit,...
  • zheng3stone
  • zheng3stone
  • 2017年07月10日 20:48
  • 114

Retrofit 的使用简介

Retrofit 的使用介绍Android和Java安全的http请求客户端版本去年年底更新到V2.0.0了。V1&&V2优势在V1.X.X 的时候: 可以利用接口,方法和注解参数(parameter...
  • lovejjfg
  • lovejjfg
  • 2016年03月21日 16:34
  • 1939

Retrofit之表单提交、多文件上传

使用介绍 - get请求 路径替换 (1) 路径替换 主域名 http://api.qianguan360.com/service/ 接口地址 homePhone/loginPhone/ ...
  • u013164293
  • u013164293
  • 2016年07月07日 16:58
  • 6467

Retrofit实现文件上传(二)

1.序言       这几天一直在忙其他乱七八糟的事情,都没能好好敲我的代码呢?昨天,在大力大神的指点下,我对Retrofit的文件上传开悟了;在上节的解析中,我只是蜻蜓点水的提了一下Retrofi...
  • zhangxing52077
  • zhangxing52077
  • 2016年10月16日 13:31
  • 8300

Retrofit谷歌官方详解

之前对Android里常用的网络请求库OkHttp与Volley做了简单的学习归纳与总结,这里看这个系列中的最后一篇,来认识一下Retrofit。  Retrofit可以认为是OkHttp的“升级版”...
  • sw5131899
  • sw5131899
  • 2016年12月23日 17:09
  • 441

RetroFit请求参数和返回格式说明

1 Get请求  通过@Query注解请求参数,如下: @POST("banner/api/5item.json") Observable login(@Query("bId") String bI...
  • XIAOGUOCHANG
  • XIAOGUOCHANG
  • 2017年02月10日 18:53
  • 740
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Retrofit简介
举报原因:
原因补充:

(最多只允许输入30个字)