1.首先我们要导两个权限
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
2.写一个接口
public interface GitHubService {
/*"":/到?之间的内容*/
@GET("umIPmfS6c83237d9c70c7c9510c9b0f97171a308d13b611")
//bean:解析的bean类
//uid:拼接的参数
Call<bean> getCall(@Query("uri") String uid);
}
3.RetrofitUtils
public class RetrofitUtils {
private static volatile RetrofitUtils instance;
private final Retrofit retrofit;
private static OkHttpClient getOkhttpClient() {
return new OkHttpClient.Builder()
.connectTimeout(5000, TimeUnit.MILLISECONDS)
.addInterceptor(new Logger())
.build();
}
private RetrofitUtils(String baseurl) {
retrofit = new Retrofit.Builder()
.baseUrl(baseurl)
.client(getOkhttpClient())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.build();
}
public static RetrofitUtils getInstance(String baseurl) {
if (instance == null) {
synchronized (RetrofitUtils.class) {
if (instance == null) {
instance = new RetrofitUtils(baseurl);
}
}
}
return instance;
}
public Retrofit getretrofit(){
return retrofit;
}
}
4.调用
Call<bean> homepage = RetrofitUtils.getInstance(str1)
.getretrofit().create(GitHubService.class)
.getCall(str2);
homepage.enqueue(new Callback<bean>() {
@Override
public void onResponse(Call<bean> call, Response<bean> response) {
}
@Override
public void onFailure(Call<bean> call, Throwable t) {
}
});