retrofit基本上时目前最好用的网络框架了,他的效率远远高于xutils,volley等一些框架,

用法:

1.你需要写一个接口来存放retrolfit请求所需要的方法,如下,

请求的方法会返回一个Call,Call后面的泛型时你解析返回的json的实体类,

注解的get是请求的方式,get后的api时请求的路径。

这样一个简单的接口就写好了

TakeoutInterface{(Api.)Call<ResponseInfo>()}


2.接口写好了,现在还不能用,我们需要初始化:

如下初始化retrofit,

我们起码需要配置请求的主机地址,配置解析数据的解析工具,比如gson,

最后调用build来初始化,但是还是不能使用,因为我们要把刚才创建的请求接口配置给build,不然人家怎么知道具体干什们,怎们请求,请求神门东西,

调用

sTakeoutInterface=build.create(TakeoutInterface.class);

这句话就可以了



HttpUtils{TakeoutInterfaceTakeoutInterface(){(==){Retrofitbuild=Retrofit.Builder().baseUrl(Api.).addConverterFactory(GsonConverterFactory.(Gson())).build()=build.create(TakeoutInterface.)}{}}

3.然后就可以在我们的类中使用了,如下

TakeoutInterfacehttp=HttpUtils.()Call<ResponseInfo>call=http.getHomeDate()call.enqueue(Callback<ResponseInfo>(){(Call<ResponseInfo>callResponse<ResponseInfo>response){Toast.(MainActivity.response.body().toString()Toast.).show()}(Call<ResponseInfo>callThrowablet){Toast.(MainActivity.t.toString()Toast.).show()}})}

最后时我们需要添加的依赖:

compilecompilecompile