retrofit 网络请求 及工具类

依赖
implementation ‘com.squareup.retrofit2:retrofit:2.0.0’
implementation ‘com.squareup.retrofit2:converter-gson:2.0.2’

 Api
 public static final String urlOne="http://mnews.gw.com.cn/wap/";
 ApiSreviser 
@GET("data/news/news/mobile/jbgg/page_{page}.json")
Call<List<Bean>> getshow(@Path("page")int page); 
  private void getone() {
     //创建Retrofit
    Retrofit retrofit=new Retrofit.Builder()
             .baseUrl(Api.Urlone)
             .addConverterFactory(GsonConverterFactory.create())
             .build();
    //java动态动态代理的方式得到代理对象
    AipSrevice aipSrevice = retrofit.create(AipSrevice.class);
         //通过代理对象执行的get请求返回call
    Call<OneBean> call = aipSrevice.geturione(page);
             call.enqueue(new Callback<OneBean>() {
                 @Override
                 public void onResponse(Call<OneBean> call, Response<OneBean> response) {
                         //成功的方法    //主线程
                     OneBean body = response.body();
                     String url = body.results.get(0).getUrl();
         /*  Toast.makeText(MainActivity.this, url, Toast.LENGTH_SHORT).show();*/
                 }
                 @Override
                 public void onFailure(Call<OneBean> call, Throwable t) {

                 }
             });

工具类

  //单例
private static Util util;
private  Util() {
}
public static Util getUtil(){
      if (util==null){
          synchronized (Util.class){
              if (util==null){
                   util = new Util();
              }
          }
      }
       return util;
}

 返回Retrofit
    public static Retrofit getRetrofit(String url){
        Retrofit builder = new Retrofit.Builder()
                .baseUrl(url)
                .addConverterFactory(GsonConverterFactory.create())
                .build();
           return builder;
    }
 //
    public <T>T getserviser(String url,Class<T>service){
        Retrofit retrofit = getRetrofit(url);
         T t = retrofit.create(service);
                return t;
    }
调用
ApiSreviser getserviser = Util.getUtil().getserviser(Api.urlOne, ApiSreviser.class);
Call<List<Bean>> call = getserviser.getshow(page);

//网络判断工具

public static  boolean isnet(Context context){
    //获取网络状态链接管理器
  ConnectivityManager co = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    //得到网络信息
    NetworkInfo info = co.getActiveNetworkInfo();

    if(info!=null){
        return info.isAvailable();
    }
    return  false;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值