请求接口的路径
private String path = "http://api.expoon.com/AppNews/getNewsList/type/1/p/1";
Asynctask注册
// 注册
MyAsynctask myAsynctask = new MyAsynctask();
myAsynctask.execute(path);
请求的方法
// AsyncTask方法
private class MyAsynctask extends AsyncTask<String,Void,String> {
@Override
protected String doInBackground(String... strings) {
String uri = strings[0];
// 创建URL
try {
URL url = new URL(uri);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// 设置样式
connection.setRequestMethod("GET");
// 设置延迟时间
connection.setConnectTimeout(5000);
// 获取编码
int code = connection.getResponseCode();
// 判断
if (code == 200){
// 输入流
InputStream stream = connection.getInputStream();
// 转输出流
ByteArrayOutputStream bos= new ByteArrayOutputStream();
byte [] buffer = new byte[1024];
int len = 0;
while ((len = stream.read(buffer)) != -1){
bos.write(buffer,0,len);
}
// 关流
stream.close();
bos.close();
// 预备发送消息、
String json = bos.toString();
return json;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String json) {
super.onPostExecute(json);
// 解析
Gson gson = new Gson();
JsonBean fromJson = gson.fromJson(json, JsonBean.class);
ArrayList<Data> data = fromJson.getData();
吐司
Toast.makeText(getActivity(), ""+data.toString(), Toast.LENGTH_SHORT).show();
展示到listview
listView.setAdapter(new MyAdapter(getActivity(),data));
}
}