1.导依赖
compile 'com.squareup.retrofit2:retrofit:2.0.1' compile 'com.squareup.okio:okio:1.5.0' compile 'com.squareup.okhttp3:okhttp:3.2.0' compile 'com.squareup.retrofit2:converter-gson:2.0.1' compile 'com.squareup.okhttp3:logging-interceptor:3.4.1'
2.建一个接口注解GET
public interface MyApp {
接口
//http://service.meiyinkeqiu.com/service/ads/cptj
后半截写在GET里 @GET("service/ads/cptj")
InFo是一个bean类 Call<InFo>getInFo(); }
3.在Acitytiv写的代码
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getInFo(); } public void getInFo() {
日志拦截器 HttpLoggingInterceptor h=new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { @Override public void log(String message) { Log.d(">>>",message); } });
// OkHttp
OkHttpClient ok=new OkHttpClient.Builder().addInterceptor(h).build(); Retrofit re=new Retrofit.Builder().client(ok).addConverterFactory(GsonConverterFactory.create()) .baseUrl("http://service.meiyinkeqiu.com/").build(); MyApp myApp = re.create(MyApp.class); final Call<InFo> inFo = myApp.getInFo(); inFo.enqueue(new Callback<InFo>() { @Override public void onResponse(Call<InFo> call, Response<InFo> response) { InFo body = response.body(); List<List<String>> dropdown = body.getDropdown(); for (int i = 0; i <dropdown.size() ; i++) { List<String> strings = dropdown.get(i); for (int j = 0; j <strings.size() ; j++) { String s = strings.get(j); Log.d("<<<<<<",s); } } } @Override public void onFailure(Call<InFo> call, Throwable t) { } }); } }