中文字幕亚洲一区,69久久久久精品9999不卡片,亚洲国产日韩欧美在线看片,国产精品久久久久久久久岛国

龍巖易富通網絡科技有限公司

龍巖小程序開發,龍巖分銷系統

Android網絡請求庫——android-async-http

2015.09.10 | 591閱讀 | 0條評論 | 未命名

在iOS開發中有大名鼎鼎的ASIHttpRequest庫,用來處理網絡請求操作,今天要介紹的是一個在Android上同樣強大的網絡請求庫android-async-http,目前非?;鸬膽肐nstagram和Pinterest的Android版就是用的這個網絡請求庫。這個網絡請求庫是基于Apache HttpClient庫之上的一個異步網絡請求處理庫,網絡處理均基于Android的非UI線程,通過回調方法處理請求結果。 其主要特征如下:

  • 處理異步Http請求,并通過匿名內部類處理回調結果
  • Http請求均位于非UI線程,不會阻塞UI操作
  • 通過線程池處理并發請求
  • 處理文件上傳、下載
  • 響應結果自動打包JSON格式
  • 自動處理連接斷開時請求重連
使用android-async-http也非常簡單,到官網http://loopj.com/android-async-http/下載依賴jar包,導入工程中libs文件夾下并添加到工程路徑即可。通過下面的代碼來創建一個異步請求:
AsyncHttpClient client = new AsyncHttpClient(); client.get("http://www.baidu.com", new AsyncHttpResponseHandler() { @Override public void onSuccess(String response) { System.out.println(response); textView.setText(response); } @Override public void onStart() { super.onStart(); System.out.println("onStart"); } @Override public void onFinish() { super.onFinish(); System.out.println("onFinish"); } } 通過Get請求指定的URL并通過回調函數處理請求結果,同時,請求方式還支持POST和PUT,請求的同時還支持參數傳遞,下面看看如何通過JSON字符串作為參數訪問服務器: try { JSONObject jsonObject = new JSONObject(); jsonObject.put("username", "ryantang"); StringEntity stringEntity = new StringEntity(jsonObject.toString()); client.post(MainActivity.this, "http://api.com/login", stringEntity, "application/json", new JsonHttpResponseHandler(){ @Override public void onSuccess(JSONObject jsonObject) { super.onSuccess(jsonObject); } }); } catch (JSONException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); }); 官方推薦的使用方法,使用一個靜態的請求對象,我們來看看官方例舉的一個訪問Twitter的API的例子: 使用方法: 由于涉及網絡請求,最后別忘了添加權限: [php]<uses-permission android:name="android.permission.INTERNET" />[/php]

贊 (

發表評論

主站蜘蛛池模板: 苏州市| 贡山| 罗甸县| 琼海市| 都兰县| 冕宁县| 朝阳县| 长岭县| 高安市| 西藏| 苏尼特右旗| 北京市| 大冶市| 呼和浩特市| 鹿邑县| 峨边| 兴宁市| 平顶山市| 三明市| 开阳县| 阳东县| 延安市| 汉源县| 西安市| 博乐市| 白水县| 井陉县| 海门市| 台北市| 西充县| 大同县| 明光市| 彝良县| 北海市| 马尔康县| 藁城市| 怀柔区| 梁平县| 凤山市| 黄平县| 临沧市|