[关闭]
@universal 2017-04-23T08:33:07.000000Z 字数 2084 阅读 580

Android第四次培训


android中的http


  1. private void sendRequestWithHttpURLConnection() {
  2. // 开启线程来发起网络请求
  3. new Thread(new Runnable() {
  4. @Override
  5. public void run() {
  6. HttpURLConnection connection = null;
  7. try {
  8. URL url = new URL("http://www.baidu.com");
  9. connection = (HttpURLConnection) url.openConnection();
  10. connection.setRequestMethod("GET");
  11. connection.setConnectTimeout(8000);
  12. connection.setReadTimeout(8000);
  13. InputStream in = connection.getInputStream();
  14. // 下面对获取到的输入流进行读取
  15. BufferedReader reader = new BufferedReader(new
  16. InputStreamReader(in));
  17. StringBuilder response = new StringBuilder();
  18. String line;
  19. while ((line = reader.readLine()) != null) {
  20. response.append(line);
  21. }
  22. Message message = new Message();
  23. message.what = 0;
  24. // 将服务器返回的结果存放到Message
  25. message.obj = response.toString();
  26. handler.sendMessage(message);
  27. } catch (Exception e) {
  28. e.printStackTrace();
  29. } finally {
  30. if (connection != null) {
  31. connection.disconnect();
  32. }
  33. }
  34. }
  35. }).start();
  36. }

  1. private Handler handler = new Handler() {
  2. @Override
  3. public void handleMessage(Message msg) {
  4. String data= (String) msg.obj;
  5. Log.d(TAG, "handleMessage: "+data);
  6. try {
  7. JSONObject js=new JSONObject(data);
  8. JSONObject result=js.getJSONObject("result");
  9. JSONArray future=result.getJSONArray("future");
  10. for (int i=0;i<future.length();i++){
  11. JSONObject jo=future.getJSONObject(i);
  12. WeatherBean we=new WeatherBean();
  13. we.setTemp(jo.getString("temperature"));
  14. we.setWeather(jo.getString("weather"));
  15. we.setWind(jo.getString("wind"));
  16. we.setWeek(jo.getString("week"));
  17. we.setDate(jo.getString("date"));
  18. list.add(we);
  19. }
  20. } catch (JSONException e) {
  21. e.printStackTrace();
  22. }
  23. }
  24. };


本周任务

1、利用http从api接口(接口任意,百度、聚合api皆可)获取数据,然后解析,并显示出来(最好使用listview)
2、了解学习下多线程编程

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注