android异步Http框架

简介: 首先在GitHub上下载异步Http框架代码以及相关文档: 将jar包放入lib包中即可;   接下来分别实现get、post、文件上传功能实现: 代码实现如下: AsyncHttpClient client = new AsyncHttpClient(); St...

首先在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

相关文章
|
6月前
|
数据采集 安全 网络安全
使用aiohttp实现异步HTTPS爬虫的SSL优化
使用aiohttp实现异步HTTPS爬虫的SSL优化
332 81
|
6月前
|
网络协议 前端开发
为什么异步会导致HTTP队首阻塞?
总的来说,异步操作可能会导致HTTP队首阻塞,但是通过使用HTTP/2的多路复用技术,我们可以有效地解决这个问题。
177 16
|
9月前
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
250 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
7月前
|
数据采集 Rust 安全
异步读取HTTP响应体的Rust实现
异步读取HTTP响应体的Rust实现
189 13
|
8月前
|
存储 编解码 开发工具
Android平台毫秒级低延迟HTTP-FLV直播播放器技术探究与实现
本文详细探讨了在Android平台上实现HTTP-FLV播放器的过程。首先介绍了FLV格式的基础,包括文件头和标签结构。接着分析了HTTP-FLV传输原理,通过分块传输实现流畅播放。然后重点讲解了播放器的实现步骤,涵盖网络请求、数据解析、音视频解码与渲染,以及播放控制功能的设计。文章还讨论了性能优化和网络异常处理的方法,并总结了HTTP-FLV播放器的技术价值,尤其是在特定场景下的应用意义。
348 11
|
算法 JavaScript Android开发
|
11月前
|
数据采集 JSON 测试技术
Grequests,非常 Nice 的 Python 异步 HTTP 请求神器
在Python开发中,处理HTTP请求至关重要。`grequests`库基于`requests`,支持异步请求,通过`gevent`实现并发,提高性能。本文介绍了`grequests`的安装、基本与高级功能,如GET/POST请求、并发控制等,并探讨其在实际项目中的应用。
235 3
|
网络协议
Lua中实现异步HTTP请求的方法
Lua中实现异步HTTP请求的方法
|
Java 程序员 API
Android|集成 slf4j + logback 作为日志框架
做个简单改造,统一 Android APP 和 Java 后端项目打印日志的体验。
608 1
|
12月前
|
开发框架 Dart Android开发
安卓与iOS的跨平台开发:Flutter框架深度解析
在移动应用开发的海洋中,Flutter作为一艘灵活的帆船,正引领着开发者们驶向跨平台开发的新纪元。本文将揭开Flutter神秘的面纱,从其架构到核心特性,再到实际应用案例,我们将一同探索这个由谷歌打造的开源UI工具包如何让安卓与iOS应用开发变得更加高效而统一。你将看到,借助Flutter,打造精美、高性能的应用不再是难题,而是变成了一场创造性的旅程。

热门文章

最新文章