首先在GitHub上下载异步Http框架代码以及相关文档:

将jar包放入lib包中即可;

接下来分别实现get、post、文件上传功能实现:

代码实现如下:

AsyncHttpClient client = new AsyncHttpClient();
String path = "url连接";
/**
* Http--get请求
*/
client.get(path, new AsyncHttpResponseHandler(){
@Override
@Deprecated
public void onSuccess(String content) {
super.onSuccess(content);
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
} @Override
@Deprecated
public void onFailure(Throwable error, String content) {
// TODO Auto-generated method stub
super.onFailure(error, content);
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
}
}); /**
* http--post
*/
RequestParams params = new RequestParams();
params.put("account", "测试用户");
params.put("password", "12315");
client.post(path, params, new AsyncHttpResponseHandler(){
@Override
@Deprecated
public void onSuccess(String content) {
super.onSuccess(content);
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
}
@Override
@Deprecated
public void onFailure(Throwable error, String content) {
// TODO Auto-generated method stub
super.onFailure(error, content);
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
}
});
/**
* Http--文件上传
*/
String path1 = "/sdcard/p.jpg";
File file = new File(path1);
try {
params.put("profile_picture", file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
client.post("上传接口url地址",params, new AsyncHttpResponseHandler(){ @Override
@Deprecated
public void onFailure(Throwable error, String content) {
super.onFailure(error, content);
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
} @Override
@Deprecated
public void onSuccess(String content) {
Toast.makeText(MainActivity.this, content, Toast.LENGTH_SHORT).show();
} } );

android_async_http框架将常用的Http协议进行封装,简化了开发者的操作,并且具有Gzip压缩数据的功能,

项目链接:https://github.com/loopj/android-async-http

通过线程池去处理资源访问
GET/ POSTparams建设者(RequestParams)
实现多重文件上传并且没有额外的第三方库
jar包只有19Kb,很小
优化网络请求,支持Gzip

虽然是比较优秀的http框架,但是在实际使用过程中也出现了一下不理想的问题,所以不建议使用。

更多内容:http://www.apkbus.com/blog-87624-55718.html

android异步Http框架的更多相关文章

  1. Android 异步查询框架AsyncQueryHandler的使用

    AsyncQueryHandler简介: 异步的查询操作帮助类,可以处理增删改(ContentProvider提供的数据) 使用场景: 在一般的应用中可以使用ContentProvider去操作数据库 ...

  2. Android异步任务处理框架AsyncTask源代码分析

    [转载请注明出处:http://blog.csdn.net/feiduclear_up CSDN 废墟的树] 引言 在平时项目开发中难免会遇到异步耗时的任务(比方最常见的网络请求).遇到这样的问题.我 ...

  3. [android] 异步http框架与实现原理

    介绍github上的异步http框架android-async-http loopj开发 获取AsyncHttpClient对象,通过new 调用AsyncHttpClient对象的get(url,r ...

  4. Android 异步Http框架简介和实现原理

    在前几篇文章中<Android 采用get方式提交数据到服务器><Android 采用post方式提交数据到服务器><Android 采用HttpClient提交数据到服 ...

  5. Android 从零开始打造异步处理框架

    转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/5995752.html 本文出自[赵彦军的博客] 概述 在Android中会使用异步任务来处理耗时操作,避免出 ...

  6. android 学习随笔十二(网络:使用异步HttpClient框架)

    使用异步HttpClient框架发送get.post请求 在https://github.com/ 搜索 asyn-http https://github.com/search?utf8=✓& ...

  7. Android Native层异步消息处理框架

     *本文系作者工作学习总结,尚有不完善及理解不恰当之处,欢迎批评指正* 一.前言 在NuPlayer中,可以发现许多类似于下面的代码: //============================== ...

  8. 15 个 Android 通用流行框架大全(转)

    1. 缓存 DiskLruCache    Java实现基于LRU的磁盘缓存 2.图片加载 Android Universal Image Loader 一个强大的加载,缓存,展示图片的库 Picas ...

  9. Android 通用流行框架

    原文出处: http://android.jobbole.com/83028/ 1. 缓存 名称 描述 DiskLruCache Java实现基于LRU的磁盘缓存 2.图片加载 名称 描述 Andro ...

随机推荐

  1. Javascript 数字保留2位小数

    整理使用Javascript函数将数值保留两位小数: 1.num.toFixed(2) //进位 2.(Math.round(num * 100) / 100).toFixed(2) //进位 3.( ...

  2. C# 去除文件和文件夹的只读属性

    当我们使用 DirectoryInfo dir = Directory.CreateDirectory(pathName) 创建目录或者创建一个文件后,有时作为临时文件用完以后需要删除掉,使用File ...

  3. mysql最大连接数问题

    进入mysql系统就, 查询最大连接数:show variables like 'max_connections'; 修改最大连接数:set global max_connections=1000;

  4. @NotNull和@NotEmpty和@NotBlank区别

    1.@NotNull:不能为null,但可以为empty (""," "," ") 2.@NotEmpty:不能为null,而且长度必须大于 ...

  5. 【原创】对Java的synchronized关键字的学习

    在Java中,每一个线程都有一个内部锁.当我们使用synchronized关键字时,就是利用这个内部锁来实现线程对某个对象的锁定控制. 那么,如果某个对象中有两个方法,方法一和方法二都使用了synch ...

  6. Spring 上传文件

    最近碰到一个上传文件的需求,其实之前也做过但是都是search->copy 没有细究过,这次纯手工. 先看一下需要依赖的包: <dependency> <groupId> ...

  7. 2.安装中国版本的firefox

    Linux刚安装好的时候,默认是火狐浏览器并且版本比较低,而且预装的是国际版 跟中国版无法同步,因为我windows上是中国版 首先去火狐主页,中文是http://www.firefox.com.cn ...

  8. 4、js内置函数

    前言:上一篇我介绍了函数的基本概念,和一些简单的Demo.其实很多函数是js内置的,我们无需自己去写,直接拿过来用即可.内置函数分为全局函数和js内置对象的函数区别:全局函数不属于任何一个内置对象.理 ...

  9. String类之indexOf--->查找某字对应的位置

    以下方法都是java内置类String类的内置方法(不是构造方法哦,就是普通的方法),不需要我们写,直接拿过来用即可. indexOf方法对应Api介绍 lastIndexOf方法对应Api介绍 -- ...

  10. magento删除数据

    1.删除一条数据:    $delete = Mage::getSingleton("core/resource")->getConnection("core_wr ...