Http页面 包含数据请求 AsnycTask网络判断

package com.handmark.pulltorefresh.library.http;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

/**
 * @Auther: 白俊岭
 * @Date: 2019/1/7 08:55:27
 * @Description:
 */
public class Http {
    public static boolean isNetworkConnected(Context context) {
//注意要写网络权限
//判断参数是否为空(必须)
        if (context != null) {
//getSystemService 获取系统服务
//获取连接管理器
            ConnectivityManager mConnectivityManager = (ConnectivityManager)
                    context.getSystemService(Context.CONNECTIVITY_SERVICE);
//获取网络状态
            NetworkInfo info = mConnectivityManager.getActiveNetworkInfo();
            if (info != null) {
//判断网络是否可用
                return info.isAvailable();
            }
        }
        return false;
    }


    public  static  void httpAsnycTask(String string, final Callbacks callbacks){
         new AsyncTask<String, Integer, String>() {
             @Override
             protected String doInBackground(String... strings) {
                 return geturl(strings[0]);
             }

             @Override
             protected void onPostExecute(String s) {
                 super.onPostExecute(s);
                 callbacks.getData(s);
             }
         }.execute(string);
     }
      public   interface Callbacks{
        void    getData(String s);
      }

     public  static  String geturl(String string){

         try {
             URL url = new URL(string);
             HttpURLConnection connection =(HttpURLConnection) url.openConnection();
              connection.setRequestMethod("GET");
              connection.setConnectTimeout(5000);
             connection.setReadTimeout(5000);
             int code = connection.getResponseCode();
             if (code==200){
                 InputStream stream = connection.getInputStream();
                 BufferedReader reader = new BufferedReader(new InputStreamReader(stream, "utf-8"));
                 StringBuilder builder = new StringBuilder();
                 String str="";
                 while ((str=reader.readLine())!=null){
                     builder.append(str);
                 }
                 return builder.toString();
             }
             connection.disconnect();
         } catch (Exception e) {
             e.printStackTrace();
         }
           return  null;
     }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值