compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
package com.supermap.testdemo;
import android.content.Context;
import android.content.SharedPreferences;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
/**
* Created by Administrator on 2017/6/12 0012.
*/
public class RetrofitManger {
private static Retrofit retrofit;
private static HttpUrlService httpUrlService;
private static RetrofitManger retrofitManger;
private SharedPreferences sharedPreferences;
public static RetrofitManger getInstance() {
if (retrofitManger == null) {
retrofitManger = new RetrofitManger();
}
return retrofitManger;
}
public HttpUrlService getHttpUrlService(Context context) {
sharedPreferences = context.getSharedPreferences("test", Context.MODE_PRIVATE);
if (retrofit == null) {
retrofit = new Retrofit.Builder()
.baseUrl(sharedPreferences.getString("server", "11111111"))
.addConverterFactory(GsonConverterFactory.create())
.build();
}
if (httpUrlService == null) {
httpUrlService = retrofit.create(HttpUrlService.class);
}
return httpUrlService;
}
}
package com.supermap.testdemo;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Path;
import retrofit2.http.Url;
/**
* Created by Administrator on 2017/6/12 0012.
*/
public interface HttpUrlService {
@GET("{id}")
Call<ResponseBody> getMsg(@Path("id") String user);
@GET
Call<ResponseBody> getMsgs(@Url String url);
}
// Call<ResponseBody> call = RetrofitManger.getInstance().getMsg("article/details/53283899");
Call<ResponseBody> call = RetrofitManger.getInstance().getHttpUrlService(context).getMsgs("http://www.jianshu.com/p/3e13e5d34531");
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
contextTv.setText(response.body().string());
ResponseBody responseBody = response.body();
contextTv.setText(Html.fromHtml(response.body().string()));
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});