异步任务HttpUrlconnect 的GET 网络请求

来源:互联网 发布:macbook怎么显示软件 编辑:程序博客网 时间:2024/06/05 11:38

首先我呢 新建一个类是为了实现我么的网络请求到的数据读取的帮助类

package com.bwie.test;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;public class StramTools {    public static  String readinfoGet(InputStream is){        try {            ByteArrayOutputStream baos = new ByteArrayOutputStream();            byte[] arr = new byte[1024];            int len=0 ;            while((len=is.read(arr))!=-1){                baos.write(arr,0,len);            }            return baos.toString();        } catch (IOException e) {            e.printStackTrace();        }        return  null;    }}


//那么接下来就要在MainActivity 类中首先我看看GET 网络请求

private void GetNextData(String urll){        new AsyncTask<String, Void, String>() {            @Override            protected void onPostExecute(String s) {                super.onPostExecute(s);                if(s==null){                    return;                }                Gson gson = new Gson();                Bean bean = gson.fromJson(s, Bean.class);                final List<Bean.DataBean> list = bean.getData();                                    
Myadapter myadapter = new Myadapter(getActivity(), list);
xlv.setAdapter(myadapter); }
 @Override protected String doInBackground(String... params) {
try { 
URL url = new URL(params[0]);
 HttpURLConnection connection = (HttpURLConnection) url.openConnection();
 connection.setRequestMethod("GET"); 
connection.setReadTimeout(5000);
 connection.setConnectTimeout(5000);
 int code = connection.getResponseCode();
 if(code ==200){
 InputStream is = connection.getInputStream();
 return StramTools.GetRead(is); 
} } 
catch (Exception e) { 
e.printStackTrace(); 
 return null; 
}.execute(urll); }