//下面我就写一个方法就可以得到接口中的数据
public void xu(){ new Thread(){ @Override public void run() { String s = "http://api.expoon.com/AppNews/getNewsList/type/1/p/1"; try { URL url = new URL(s); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); InputStream inputStream = urlConnection.getInputStream(); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); StringBuilder stringBuilder = new StringBuilder(); String ss=""; while ((ss=bufferedReader.readLine())!=null){ stringBuilder.append(ss); }
//得到后的数据用handler发送过去,然后任由你处置 Message obtain = Message.obtain(); obtain.obj=stringBuilder.toString(); handler.sendMessage(obtain); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }.start(); }
//这里是接收内容的handler Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { String obj = (String) msg.obj; Log.e("name","name"+obj); Gson gson = new Gson(); zkjs zkjs = gson.fromJson(obj, zkjs.class); List<com.example.jiexijson.zkjs.DataBean> data = zkjs.getData(); Log.e("chen", "我是得到的getData:----------"+data ); for (int s=0;s<data.size();s++){ com.example.jiexijson.zkjs.DataBean bean = data.get(s); String news_id = bean.getNews_id(); final String news_summary = bean.getNews_summary(); String news_title1 = bean.getNews_title(); String pic_url = bean.getPic_url(); Log.e("chen", "我是得到的getData的分支内容:----------"+news_id+news_summary+news_title1+pic_url); array.add(new wo(news_id,news_summary,news_title1,pic_url)); } Log.e("chen", "我是解析后的json:----------"+zkjs.toString() ); lvspq.notifyDataSetChanged(); } };