日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android应用中使用AsyncHttpClient来异步网络数据

發(fā)布時間:2025/6/15 Android 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android应用中使用AsyncHttpClient来异步网络数据 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

首先下載AsyncHttpClient的庫文件,可以自行搜索,可以到下面地址下載

http://download.csdn.net/detail/xujinyang1234/5767419

測試的Activity,用到了RequstClient,LoadCacheResponseLoginouthandler,LoadDatahandler三個重寫的類

[java]?view plaincopyprint?
  • package?com.example.asynchttpclienttest;??
  • ??
  • import?android.app.Activity;??
  • import?android.os.Bundle;??
  • import?android.view.Menu;??
  • import?android.widget.TextView;??
  • ??
  • import?com.loopj.android.http.RequestParams;??
  • ??
  • public?class?MainActivity?extends?Activity?{??
  • ????private?TextView?test;??
  • ??
  • ????@Override??
  • ????protected?void?onCreate(Bundle?savedInstanceState)?{??
  • ????????super.onCreate(savedInstanceState);??
  • ????????setContentView(R.layout.activity_main);??
  • ????????init();??
  • ????}??
  • ??
  • ????private?void?init()?{??
  • ????????test?=?(TextView)?findViewById(R.id.test);??
  • ????????System.out.println("拉拉");??
  • ????????RequestParams?param?=?new?RequestParams();??
  • ????????param.put("id",?1?+?"");??
  • ????????RequstClient.get(??
  • ????????????????"http://58.192.23.75:8080/xiaoxiao2/ColumnServletAndroid",??
  • ????????????????param,?new?LoadCacheResponseLoginouthandler(MainActivity.this,??
  • ????????????????????????new?LoadDatahandler()?{??
  • ????????????????????????????@Override??
  • ????????????????????????????public?void?onStart()?{??
  • ????????????????????????????????super.onStart();??
  • ????????????????????????????????test.setText("開始拉去數(shù)據(jù)");??
  • ????????????????????????????}??
  • ??
  • ????????????????????????????@Override??
  • ????????????????????????????public?void?onSuccess(String?data)?{??
  • ????????????????????????????????super.onSuccess(data);??
  • ????????????????????????????????test.setText(data);??
  • ????????????????????????????????System.out.println("拉倒的數(shù)據(jù)"?+?data);??
  • ????????????????????????????}??
  • ??
  • ????????????????????????????@Override??
  • ????????????????????????????public?void?onFailure(String?error,?String?message)?{??
  • ????????????????????????????????super.onFailure(error,?message);??
  • ????????????????????????????????test.setText("錯誤的數(shù)據(jù)"?+?message);??
  • ????????????????????????????}??
  • ??
  • ????????????????????????????@Override??
  • ????????????????????????????public?void?onFinish()?{??
  • ????????????????????????????????super.onFinish();??
  • ????????????????????????????}??
  • ????????????????????????}));??
  • ????}??
  • ??
  • ????@Override??
  • ????public?boolean?onCreateOptionsMenu(Menu?menu)?{??
  • ????????getMenuInflater().inflate(R.menu.main,?menu);??
  • ????????return?true;??
  • ????}??
  • ??
  • }??
  • RequstClient.java

    [java]?view plaincopyprint?
  • package?com.example.asynchttpclienttest;??
  • ??
  • import?com.loopj.android.http.AsyncHttpClient;??
  • import?com.loopj.android.http.AsyncHttpResponseHandler;??
  • import?com.loopj.android.http.RequestParams;??
  • ??
  • public?class?RequstClient?{??
  • ????/**?
  • ?????*?定義一個異步網(wǎng)絡(luò)客戶端?默認(rèn)超時未20秒?當(dāng)超過,默認(rèn)重連次數(shù)為5次?默認(rèn)最大連接數(shù)為10個?
  • ?????*/??
  • ????private?static?AsyncHttpClient?mClient?=?new?AsyncHttpClient();??
  • ????static?{??
  • ????????mClient.setTimeout(20000);??
  • ????}??
  • ????public?static?void?post(String?url,?AsyncHttpResponseHandler?handler)?{??
  • ????????post(url,?null,?handler);??
  • ????}??
  • ????/**?
  • ?????*?post?請求?
  • ?????*??
  • ?????*?@param?url?
  • ?????*????????????API?地址?
  • ?????*?@param?params?
  • ?????*????????????請求的參數(shù)?
  • ?????*?@param?handler?
  • ?????*????????????數(shù)據(jù)加載句柄對象?
  • ?????*/??
  • ????public?static?void?post(String?url,?RequestParams?params,??
  • ????????????AsyncHttpResponseHandler?handler)?{??
  • ????????System.out.println("進(jìn)入post");??
  • ????????mClient.post(url,?params,?handler);??
  • ????}??
  • ????public?static?void?get(String?url,?AsyncHttpResponseHandler?handler)?{??
  • ??
  • ????}??
  • ????public?static?void?get(String?url,?RequestParams?params,??
  • ????????????AsyncHttpResponseHandler?handler)?{??
  • ????????System.out.println("進(jìn)入get");??
  • ????????mClient.get(url,?params,?handler);??
  • ????}??
  • }??

  • [java]?view plaincopyprint?
  • package?com.example.asynchttpclienttest;??
  • ??
  • import?org.apache.http.Header;??
  • ??
  • import?android.content.Context;??
  • ??
  • import?com.loopj.android.http.AsyncHttpResponseHandler;??
  • ??
  • public?class?LoadCacheResponseLoginouthandler?extends?AsyncHttpResponseHandler?{??
  • ????private?Context?context;??
  • ????private?LoadDatahandler?mHandler;??
  • ??
  • ????public?LoadCacheResponseLoginouthandler(Context?context,??
  • ????????????LoadDatahandler?mHandler)?{??
  • ????????this.context?=?context;??
  • ????????this.mHandler?=?mHandler;??
  • ????}??
  • ????@Override??
  • ????public?void?onStart()?{??
  • ????????super.onStart();??
  • ????????mHandler.onStart();??
  • ????}??
  • ????@Override??
  • ????public?void?onFailure(Throwable?error,?String?content)?{??
  • ????????super.onFailure(error,?content);??
  • ????????mHandler.onFailure("",?"網(wǎng)絡(luò)連接超時");??
  • ????}??
  • ????@Override??
  • ????public?void?onFinish()?{??
  • ????????super.onFinish();??
  • ????????mHandler.onFinish();??
  • ????}??
  • ??
  • ????@Override??
  • ????public?void?onSuccess(int?statusCode,?Header[]?headers,?String?content)?{??
  • ????????super.onSuccess(statusCode,?headers,?content);??
  • ????????System.out.println("得到的返回碼"?+?statusCode);??
  • ????????try?{??
  • ????????????switch?(statusCode)?{??
  • ????????????case?200:??
  • ????????????????mHandler.onSuccess(content);??
  • ????????????????System.out.println("返回的內(nèi)容"?+?content);??
  • ????????????????break;??
  • ????????????case?401:??
  • ????????????????onFailure("401",?"沒有登錄");??
  • ??
  • ????????????????break;??
  • ????????????case?403:??
  • ????????????????onFailure("404",?"沒有權(quán)限");??
  • ????????????????break;??
  • ????????????default:??
  • ????????????????break;??
  • ????????????}??
  • ??
  • ????????}?catch?(Exception?e)?{??
  • ????????????e.printStackTrace();??
  • ????????}??
  • ????}??
  • ??
  • ????/**?
  • ?????*?出錯?
  • ?????*??
  • ?????*?@param?error?
  • ?????*?@param?errorMessage?
  • ?????*/??
  • ????public?void?onFailure(String?error,?String?errorMessage)?{??
  • ????????if?(errorMessage?!=?null)?{??
  • ????????????mHandler.onFailure(error,?errorMessage);??
  • ????????}??
  • ????}??
  • }??



  • 接口:

    [java]?view plaincopyprint?
  • package?com.example.asynchttpclienttest;??
  • ??
  • public?class?LoadDatahandler?{??
  • ????/**?
  • ?????*?加載數(shù)據(jù)時調(diào)用?
  • ?????*/??
  • ????public?void?onStart()?{};??
  • ????/**?
  • ?????*?加載數(shù)據(jù)調(diào)用,得到緩存數(shù)據(jù)?
  • ?????*?@param?data?
  • ?????*/??
  • ????public?void?onLoadCaches(String?data)?{};??
  • ????/**?
  • ?????*?當(dāng)調(diào)用服務(wù)器接口成功獲取數(shù)據(jù)時,調(diào)用這個方法?
  • ?????*?@param?data?
  • ?????*/??
  • ????public?void?onSuccess(String?data)?{};??
  • ??????
  • ????/**?
  • ?????*?當(dāng)調(diào)用服務(wù)器接口獲取數(shù)據(jù)失敗時,調(diào)用這個方法?
  • ?????*?@param?error?????出錯原因?
  • ?????*?@param?message???出錯原因描述?
  • ?????*/??
  • ????public?void?onFailure(String?error,?String?message)?{};??
  • ????/**?
  • ?????*?加載完成時調(diào)用?
  • ?????*/??
  • ????public?void?onFinish()?{};??
  • ??
  • }??

  • 擴(kuò)展:

    Android在AsyncHttpClient框架的基礎(chǔ)上定制能直接返回對象數(shù)組的框架

    總結(jié)

    以上是生活随笔為你收集整理的Android应用中使用AsyncHttpClient来异步网络数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 污在线观看| 欧美日韩亚 | 日韩精品中文字幕一区二区 | 神马午夜电影一区二区三区在线观看 | av无码一区二区三区 | 91精品国产91久久久久久吃药 | 国产一区视频在线观看免费 | 丰满人妻综合一区二区三区 | 成人动漫一区二区 | 杨幂一区二区三区免费看视频 | 中国在线观看免费视频 | 做暧暧视频在线观看 | 精品国产xxx | 潮见百合子 | 日韩视频一区在线 | 北条麻妃一区二区三区四区五区 | 四季av日韩精品一区 | 色婷婷五| 午夜久久久久久久 | 欧美老熟妇一区二区 | av无码精品一区二区三区宅噜噜 | 亚洲综合五月天 | 天天综合中文字幕 | 国产精品96久久久久久 | 久久久91精品国产一区二区三区 | 日本一区免费电影 | 久久久久久欧美精品se一二三四 | 免费观看一级一片 | 欧洲黄色片 | 91视频免费在线 | 黄色特级一级片 | 国产精品欧美一区二区三区 | 免费一级一片 | 免费黄色av网站 | 亚洲一二三 | 黄片毛片在线免费观看 | 美女流白浆视频 | 欧洲高潮三级做爰 | 一级全黄男女免费大片 | 麻豆精品av| 五月婷婷小说 | 欧美日韩高清在线播放 | 欧美黑人添添高潮a片www | 杨贵妃颤抖双乳呻吟求欢小说 | 日韩一卡二卡三卡 | 亚洲综合日韩 | 漂亮人妻被黑人久久精品 | 欧美精品色视频 | 国产一区二区免费在线观看 | 欧美三区四区 | 亚洲iv一区二区三区 | 精品人妻一区二区三区香蕉 | 色偷偷免费费视频在线 | jizz成熟丰满日本少妇 | 欧美乱妇日本无乱码特黄大片 | 涩涩屋视频 | www黄色大片| 爆操91 | 丁香婷婷在线 | 蜜桃视频在线入口www | 天天爽天天做 | 国产黄免费 | 亚洲www啪成人一区二区麻豆 | 老司机福利院 | 欧美精品免费一区二区 | 影音先锋一区 | 日韩激情网址 | 日韩在线观看视频一区二区 | 秋霞二区| 蜜桃成人无码区免费视频网站 | 在线日韩av| 亚洲无线观看 | 欧美区一区二区 | 国产三级全黄裸体 | 免费观看全黄做爰的视频 | 国产美女菊爆在线播放APP | 亚洲AV不卡无码一区二区三区 | www.毛片| 成人免费无遮挡无码黄漫视频 | 性一交一乱一色一免费无遮挡 | 色七七久久| 手机看片欧美 | 精品视频www | 靠逼视频网站 | 中文区中文字幕免费看 | 欧美大黄视频 | 视频在线看 | 中文字幕一区二区三区不卡 | 少妇激情一区二区三区视频 | 精品久久国产视频 | 在线电影一区二区 | 蜜臀久久99精品久久久画质超高清 | 亚洲精品合集 | 欧美影院一区二区三区 | 日本xxxwww| 99re在线 | 色一情一区二 | 咪咪色影院 | av综合久久 |