import android.os.AsyncTask; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; /** * Created by Administrator on 2018/1/6. */ public class MyTask extends AsyncTask<String,Void,String> { //申明接口变量 private ICallbacks iCallbacks; //传入实现此接口的类对象 public MyTask(ICallbacks iCallbacks){ this.iCallbacks=iCallbacks; } @Override protected String doInBackground(String... strings) { try { URL url=new URL(strings[0]);//创建URL //开启连接 HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setRequestMethod("GET");//设置请求方式 urlConnection.setConnectTimeout(5000);//设置服务器超时时间 urlConnection.setReadTimeout(5000);//设置读取超时时间 if (urlConnection.getResponseCode()==200){//判断结果码 InputStream inputStream = urlConnection.getInputStream();//获取数据 String s = StreamToString.streamToString(inputStream);//将流转换成字符串 return s; } } catch (Exception e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); //调用接口 iCallbacks.getJson(s); } //定义一个接口 public interface ICallbacks{ void getJson(String s); } }
异步访问的工具类
最新推荐文章于 2024-04-26 11:15:06 发布