android-async-http-cached

Android 异步 HTTP 库
授权协议 GPL
开发语言 Java
所属分类 手机/移动开发、 手机开发包
软件类型 开源软件
地区 国产
投 递 者 许俊贤
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

android-async-http (android-async-http-cached)是基于 Android Asynchronous HTTP Library (https://github.com/loopj/android-async-http)  实现。

1.增加响应数据本地缓存功能。
2.便于JSON-RPC,XML-RPC方式调用。  

用法:

public class TestActivity extends Activity {

    private static final int REQUEST_GET_ID = 0;
    private static final int REQUEST_POST_ID = 1;
    private static final int REQUEST_POST_JSON_ID = 2;
    private static final int REQUEST_POST_XML_ID = 3;

    private RequestManager mRequestManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.mRequestManager = RequestManager
                .getInstance(getApplicationContext());

        get();
        postParams();
        postJSONObject();
        postXML();
    }

    /**
     * get by url
     */
    private void get() {
        this.mRequestManager
                .get("http://app.shafa.com/api/push/download/52a093cf3bf55d361e000477?response-content-type=application%2fvnd.android.package-archive",
                        null, requestListener, true, REQUEST_GET_ID);
    }

    /**
     * post by RequestParams
     */
    private void postParams() {
        final RequestParams params = new RequestParams();
        params.put("key1", "value1");
        params.put("key2", "value2");
        this.mRequestManager.post("http://server.winfirm.net/memoServer",
                params, requestListener, REQUEST_POST_ID);
    }

    /**
     * post by JSONObject
     */
    private void postJSONObject() {
        final JSONObject json = new JSONObject();
        try {
            json.put("key1", "value1");
            json.put("key2", "value2");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        this.mRequestManager.post("http://server.winfirm.net/memoServer", json,
                requestListener, REQUEST_POST_JSON_ID);
    }

    /**
     * post by xml
     */
    private void postXML() {
        final String xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><key1>value1</key1><key2>value2</key2>";
        this.mRequestManager.post("http://server.winfirm.net/memoServer", xml,
                requestListener, REQUEST_POST_XML_ID);
    }

    /**
     * request listener
     */
    private RequestListener requestListener = new RequestListener() {
        @Override
        public void onStart() {

        }

        @Override
        public void onCompleted(int statusCode, byte[] data,
                String description, int actionId) {
            try {
                System.out.println(new String(data, "UTF-8"));
            } catch (Exception e) {
                e.printStackTrace();
            }
            if (REQUEST_GET_ID == actionId) {
                if (RequestListener.OK == statusCode) {
                    // sucess
                } else {
                    // handler error case
                }
            } else if (REQUEST_POST_ID == actionId) {

            } else if (REQUEST_POST_JSON_ID == actionId) {

            } else if (REQUEST_POST_XML_ID == actionId) {

            }
        }

        @Override
        public void onProgress(int bytesWritten, int totalSize, int actionId) {
            System.out.println(bytesWritten + "/" + totalSize);
        }
    };

}
  • 阅读目录 用法: android-async-http (android-async-http-cached)是基于 Android Asynchronous HTTP Library (https://github.com/loopj/android-async-http)  实现。 1.增加响应数据本地缓存功能。 2.便于JSON-RPC,XML-RPC方式调用。   用法: ? 1 2 3

  • /* * Copyright (C) 2006 Bilibili * Copyright (C) 2006 The Android Open Source Project * Copyright (C) 2013 Zhang Rui <bbcallen@gmail.com> * * Licensed under the Apache License, Version 2.0 (the "

  • https://github.com/davemorrissey/subsampling-scale-image-view 原理:将大图分成多个小图(tile),先加载低清晰度的整体图,放大时加载可见区域高清晰度的小图。 步骤: 1、 添加依赖 dependencies { implementation 'com.davemorrissey.labs:subsampling-scale-i

  • 前言 flutter中需要展示网络图片时候,不建议使用flutter原本Image.network(),建议最好还是采用cached_network_image这个三方库。那么我今天就按照它来展开说明,我再做企业级项目时如何重新定制cached_network_image。 由于我的项目网络请求采用Dio库,所以我希望我的图片库也采用Dio来网络请求,也是为了方便请求日志打印(在做APM监控时候可

  • ----------------- 通讯录列表 ----------------- 按常理来说,获取系统通讯录列表,无非就是将通讯录的数据库打开获取数据,适配,添加即可。 Cursor cursor; HashMap<Integer, ContactBean> contactIdMap = new HashMap<Integer, ContactBean>();

  • 基于Android官方AsyncListUtil优化改进RecyclerView分页加载机制(一) Android AsyncListUtil是Android官方提供的专为列表这样的数据更新加载提供的异步加载组件。基于AsyncListUtil组件,可以轻易实现常见的RecyclerView分页加载技术。AsyncListUtil技术涉及的细节比较繁复,因此我将分别写若干篇文章,分点、分解Asyn

  • 一、如何使用协程 1.1 添加依赖 implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0' implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.0' 1.2 使用协程Coroutine 在kotlinx.coroutines包中,你

  • 使用功能 在原本已有功能下新增es6转es5 gulp官网 流程 安装babel, 敲 npm install gulp-babel 根据文档调用 const gulp = require('gulp'); const babel = require('gulp-babel'); gulp.task('default', () => gulp.src('src/app.js')

  • 生产者和消费者模型是编程中运用比较广泛的模型。在SurfaceFlinger图像绘制、合成、显示也用到了该模型。利用该模型合理的管理图像缓冲区buffer。让整个android系统从绘制到显示的过程有条不紊的进行。 BufferQueue图像缓冲管理者。其成员函数createBufferQueue创建一个缓冲区队列。 void BufferQueue::createBufferQueue(sp<I

  • 承接上一章节分析:【四】Android MediaPlayer整体架构源码分析 -【设置视频显示surface】 完整系列章节分析:【一】Android MediaPlayer整体架构源码分析 -【初始化和创建】 本系列文章分析的安卓源码版本:【Android 10.0 版本】 prepareAsync/prepare方法实现流程分析 MediaPlayer提供了两个prepare处理流程:同步和

 相关资料
  • android-async-http 是 Android 上的一个异步 HTTP 客户端开发包。 主要特性: 进行异步HTTP请求,处理响应在匿名回调中完成   HTTP请求发生在UI线程之外 请求使用threadpool,限制并发资源使用情况 GET / POST参数构建使用(RequestParams) Multipart 文件上传,没有额外的第三方库 在你的应用程序上利用很小的开销,仅仅25

  • async-http-php 是个异步 HTTP 客户端,机遇 crul_mulit*,系统很简单,速度非常快。 如果你想使用 ssl 或者其他来请求一个网站,你可以实现一个 task 类和 TaskInterface 接口: date_default_timezone_set("PRC");require dirname(dirname(__FILE__)) . DIRECTORY_SEPARA

  • AsyncHttpClient 这个类库可以在Java应用程序中执行HTTP 请求并异步处理HTTP响应。用法非常简单。

  • (要求Workerman版本>=3.3.6) 安装: composer require react/http-client 示例: <?php require_once __DIR__ . '/vendor/autoload.php'; use WorkermanWorker; $worker = new Worker('text://0.0.0.0:6161'); $worker->onWork

  • 我对Android异步Http客户端(Http://loopj.com/android-async-http/)有一个问题。直到今天,我使用的是1.4.6版本和我的代码(见下面的工作没有问题)。 其中RestClient是:

  • 异步Http客户端 Get方式 1.使用域名形式 use AsyncHttp; //直接使用域名, get方式 $http = new AsyncHttp('http://groupco.com'); //设置2s超时 $http->setTimeout(2); //$http->setCookies(['token' => 'xxxx']);