首页

源码搜藏网

首页 > 安卓源码 > 功能分类 > 项目源码 >

Android开发快递查询系统,跟踪快递,快递信息及时掌握

创建时间:2016-09-06 11:38  

Android开发快递查询系统,跟踪快递,快递信息及时掌握
Android开发快递查询系统,跟踪快递,快递信息及时掌握
暂无演示 立即下载

简介

小马快递,您的好帮手。查询并跟踪快递,快递信息及时掌握。
支持全国100多家快递公司,支持扫码查询,智能识别快递公司。
附带生成二维码小工具,方便实用。体积小巧,无广告,无多余权限。

更新说明

v 2.0

v 1.5

v 1.4

下载地址

fir.im:http://fir.im/ponyexpress
应用宝:http://android.myapp.com/myapp/detail.htm?apkName=me.wcy.express

项目

公开API

开源技术

关键代码

网络请求Volley+Gson

private void search() {
    GsonRequest<SearchResult> request = new GsonRequest<SearchResult>(Utils.formatSearchUrl(mSearchInfo),
            SearchResult.class, new Response.Listener<SearchResult>() {
        @Override
        public void onResponse(SearchResult searchResult) {
            Log.i(TAG, searchResult.getMessage());
            onSearch(searchResult);
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError volleyError) {
            Log.e(TAG, volleyError.getMessage(), volleyError);
            onError();
        }
    }) {
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            Map<String, String> headers = new HashMap<>();
            headers.put(Constants.HEADER_REFERER, Constants.REFERER);
            return headers;
        }
    };
    request.setShouldCache(false);
    ExpressApplication.getInstance().getRequestQueue().add(request);
}

封装GsonRequest

public class GsonRequest<T> extends Request<T> {
    private Class<T> mClass;
    private Response.Listener<T> mListener;
    private Gson mGson;

    public GsonRequest(int method, String url, Class<T> clazz, Response.Listener<T> listener, Response.ErrorListener errorListener) {
        super(method, url, errorListener);
        mClass = clazz;
        mListener = listener;
        mGson = new Gson();
    }

    public GsonRequest(String url, Class<T> clazz, Response.Listener<T> listener, Response.ErrorListener errorListener) {
        this(Method.GET, url, clazz, listener, errorListener);
    }

    @Override
    protected Response<T> parseNetworkResponse(NetworkResponse response) {
        String jsonString;
        try {
            jsonString = new String(response.data, HttpHeaderParser.parseCharset(response.headers));
            return Response.success(mGson.fromJson(jsonString, mClass), HttpHeaderParser.parseCacheHeaders(response));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
            return Response.error(new ParseError(e));
        }
    }

    @Override
    protected void deliverResponse(T response) {
        mListener.onResponse(response);
    }
}

截图

    

上一篇:一款开源Android在线音乐播放器波尼音乐Android源码下载
下一篇:Android二手交易平台,dagger2+mvp+Bmob后台云搭建,集成了百度

相关内容

热门推荐