神刀安全网

Android杂谈:Retrofit初体验

Android杂谈:Retrofit初体验

济飞.png

Retrofit是网络请求的一个库,是在okhttp上面有包装了一层,封装了数据转换,get,post等等。我觉得最主要是封装了数据转换吧,什么json数据转换什么的。
大概说个例子吧,下面例子是通过get方法调用github网址api。

建立数据处理类型

估计是服务器的数据最后都转变成下面这个java类型吧,便于java处理

package com.wenfengtou.retrofitdemo;  /**  * Created by 80119510 on 2017-04-12.  */  public class RepositoryBean {      String full_name;     String html_url;      int contributions;      @Override     public String toString() {         return full_name + " (" + contributions + ")";     } }

访问服务器

GitHubService是一个接口,据说可以被Retrofit转化成一个类,然后就能调用里面的方法queryOrgRepos了,这个方法就是通过get的方式获取数据,返回一个RepositoryBean的数据。

package com.wenfengtou.retrofitdemo;  /**  * Created by 80119510 on 2017-04-12.  */  import java.util.List;  import retrofit2.Call; import retrofit2.Retrofit; import retrofit2.converter.gson.GsonConverterFactory; import retrofit2.http.GET; import retrofit2.http.Path;  public interface GitHubService {     @GET("orgs/{orgName}/repos")     Call<List<RepositoryBean>> queryOrgRepos(             @Path("orgName") String orgName);      Retrofit retrofit = new Retrofit.Builder()             .baseUrl("https://api.github.com/")             .addConverterFactory(GsonConverterFactory.create())             .build();   }

main函数调用

首先通过retrofit.create获取到gitHubService 服务,然后调用这个服务的方法就ok啦。

        GitHubService gitHubService = retrofit.create(GitHubService.class);          Call<List<RepositoryBean>> call = gitHubService.queryOrgRepos("guchuanhangOrganization");

例子传送门
github挂了

参考:
Retrofit

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » Android杂谈:Retrofit初体验

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址