Java源码示例:org.kymjs.kjframe.http.HttpCallBack

示例1
/**
 * 附带有Http请求头的get请求
 */
private void getWithHeader() {
    KJHttp kjh = new KJHttp();
    HttpParams params = new HttpParams();
    params.put("uid", 863548);
    params.put("teamid", 12375);
    params.put("pageIndex", 0);
    params.put("pageSize", 20);
    params.put("type", "all");
    params.putHeaders("cookie", "cookie不能告诉你");
    kjh.get("http://team.oschina.net/action/api/team_active_list", params,
            new HttpCallBack() {
                @Override
                public void onSuccess(String t) {
                    super.onSuccess(t);
                    toast(t);
                }
            });
}
 
示例2
private void post() {
    KJHttp kjh = new KJHttp();
    HttpParams params = new HttpParams();
    // params.put("uid", 863548);
    // params.put("msg", "没有网,[发怒]");
    // params.putHeaders("cookie", "cookie不能告诉你");
    // kjh.post("http://www.oschina.net/action/api/tweet_pub", params,
    params.put("username", "[email protected]");
    params.put("pwd", "123456");
    kjh.post("http://www.oschina.net/action/api/login_validate", params,
            new HttpCallBack() {
                @Override
                public void onSuccess(Map<String, String> headers, byte[] t) {
                    super.onSuccess(headers, t);
                    // 获取cookie
                    KJLoger.debug("===" + headers.get("Set-Cookie"));
                    Log.i("kymjs", new String(t));
                }
            });
}
 
示例3
/**
 * 附带有文件的post请求
 */
private void postWithFile() {
    KJHttp kjh = new KJHttp();
    HttpParams params = new HttpParams();
    params.put("uid", 863548);
    params.put("msg", "在有图片的时 [发呆]");
    params.put("img", new File("/storage/emulated/0/qrcode.jpg"));
    params.putHeaders("Cookie", "cookie不能告诉你");
    kjh.post("http://www.oschina.net/action/api/tweet_pub", params,
            new HttpCallBack() {
                @Override
                public void onSuccess(String t) {
                    super.onSuccess(t);
                    toast(t);
                }
            });
}
 
示例4
/**
 * 使用JSON提交参数而不是Form表单
 */
private void jsonRequest() {
    KJHttp kjh = new KJHttp();
    HttpParams params = new HttpParams();
    params.putHeaders("Cookie", "cookie不能告诉你");
    params.putJsonParams("{\"uid\":863548,\"stickys\":[{\"id\":29058,\"iid\":0,\"content\":\"你好\",\"color\":\"green\",\"createtime\":\"2015-04-16 16:26:17\",\"updatetime\":\"2015-04-16 16:26:17\"}]}");
    kjh.jsonPost(
            "http://www.oschina.net/action/api/team_stickynote_batch_update",
            params, new HttpCallBack() {
                @Override
                public void onSuccess(String t) {
                    super.onSuccess(t);
                    toast(t);
                }
            });
}
 
示例5
/**
 * 下载。有一个陷阱需要你注意:下载方法中的KJHttp对象必须和暂停方法中的KJHttp对象为同一个对象
 */
private void download() {
    kjh.download(
            FileUtils.getSDCardPath() + "/1.apk",
            "http://music.baidu.com/cms/mobile/static/apk/Baidumusic_yinyuehexzfc.apk",
            new HttpCallBack() {
                @Override
                public void onLoading(long count, long current) {
                    super.onLoading(count, current);
                    KJLoger.debug(count + "====" + current);
                }

                @Override
                public void onSuccess(byte[] t) {
                    super.onSuccess(t);
                    toast("完成");
                }

                @Override
                public void onFailure(int errorNo, String strMsg) {
                    super.onFailure(errorNo, strMsg);
                    KJLoger.debug(errorNo + "====" + strMsg);
                }
            });
}
 
示例6
private void refresh() {
    kjh.get(EVERYDAY_HOST, new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug(TAG + "网络请求:" + t);
            if (t != null && !t.equals(cache)) {
                List<EverydayMessage> datas = Parser.getEveryDayMsg(t);
                if (adapter == null) {
                    adapter = new WeChatAdapter(outsideAty, datas);
                    mListView.setAdapter(adapter);
                } else {
                    adapter.refresh(datas);
                }
            }
        }
    });
}
 
示例7
/**
 * 创建一个网络请求
 */
protected Request<Bitmap> makeImageRequest(final String requestUrl,
                                           int maxWidth, int maxHeight) {
    return new ImageRequest(requestUrl, maxWidth, maxHeight,
            new HttpCallBack() {
                @Override
                public void onSuccess(Bitmap t) {
                    super.onSuccess(t);
                    onGetImageSuccess(requestUrl, t);
                }

                @Override
                public void onFailure(int errorNo, String strMsg) {
                    super.onFailure(errorNo, strMsg);
                    onGetImageError(requestUrl, new KJHttpException(strMsg));
                }
            });
}
 
示例8
private void doHttp() {
    kjh.get("http://zb.oschina.net/action/zbApi/contacts_list?uid=863548", new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            parser(t);
        }
    });
}
 
示例9
@Override
public View instantiateItem(ViewGroup container, int position) {
    View root = View.inflate(aty, R.layout.item_pager, null);
    final PhotoView photoView = (PhotoView) root.findViewById(R.id.images);
    final GifImageView gifView = (GifImageView) root.findViewById(R.id.gifimage);
    final ProgressBar mProgressBar = (ProgressBar) root.findViewById(R.id.progress);

    GifRequest request = new GifRequest(imageUrls[position], new HttpCallBack() {
        @Override
        public void onPreStart() {
            super.onPreStart();
            mProgressBar.setVisibility(View.VISIBLE);
        }

        @Override
        public void onSuccess(byte[] t) {
            super.onSuccess(t);
            //根据图片类型的不同选择不同的加载方案
            if (TYPE_GIF == getType(t)) {
                displayGif(gifView, t);
            } else {
                displayImage(photoView, t);
            }
        }

        @Override
        public void onFinish() {
            super.onFinish();
            mProgressBar.setVisibility(View.GONE);
        }
    });
    kjh.doRequest(request);

    container.addView(root, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams
            .MATCH_PARENT);
    return root;
}
 
示例10
private void get() {
    KJHttp kjh = new KJHttp();
    HttpParams params = new HttpParams();
    params.put("pageIndex", 0);
    params.put("pageSize", 20);
    kjh.get("http://www.oschina.net/action/api/tweet_list", params,
            new HttpCallBack() {
                @Override
                public void onSuccess(String t) {
                    super.onSuccess(t);
                    toast(t);
                }
            });
}
 
示例11
private void download(String url) {
    final File folder = FileUtils.getSaveFolder(AppConfig.saveFolder);
    File tempFile = new File(folder + "/kjblog.apk.tmp");
    if (tempFile.exists()) {
        tempFile.delete();
    }
    ViewInject.toast("正在为你下载新版本");
    kjh.download(folder + "/kjblog.apk", url, new HttpCallBack() {
        /**
         * 下载过程
         */
        @Override
        public void onLoading(long count, long current) {
            super.onLoading(count, current);
        }

        /**
         * 下载完成,开始安装
         */
        @Override
        public void onSuccess(byte[] t) {
            super.onSuccess(t);
            SystemTool.installApk(CommonService.this, new File(folder
                    + "/kjblog.apk"));
        }
    });
}
 
示例12
private void refresh(final int page) {
    kjh.get(OSCTWEET_HOST + page, new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug(TAG + "网络请求" + t);
            List<Tweet> datas = Parser.xmlToBean(TweetsList.class, t)
                    .getList();
            tweets.addAll(datas);
            if (adapter == null) {
                adapter = new TweetAdapter(mListView, tweets,
                        R.layout.item_list_tweet);
                mListView.setAdapter(adapter);
            } else {
                adapter.refresh(tweets);
            }
            mEmptyLayout.dismiss();
        }

        @Override
        public void onFailure(int errorNo, String strMsg) {
            super.onFailure(errorNo, strMsg);
            if (adapter != null && adapter.getCount() > 0) {
                return;
            } else {
                mEmptyLayout.setErrorType(EmptyLayout.NODATA);
            }
        }

        @Override
        public void onFinish() {
            super.onFinish();
            mRefreshLayout.onPullDownRefreshComplete();
            mRefreshLayout.onPullUpRefreshComplete();
        }
    });
}
 
示例13
/**
 * 发布动弹
 */
private void handleSubmit(String strSpeech, File imageFile, String audioPath) {
    HttpConfig config = new HttpConfig();
    config.cacheTime = 0;
    KJHttp kjh = new KJHttp(config);
    HttpParams params = new HttpParams();
    params.putHeaders("cookie", UIHelper.getUser(outsideAty).getCookie());
    params.put("uid", UIHelper.getUser(outsideAty).getUid());
    params.put("msg", strSpeech + "          ——————我只是一条小尾巴");

    if (imageFile != null && imageFile.exists()) {
        params.put("img", imageFile);
    }
    if (!StringUtils.isEmpty(audioPath)) {
        params.put("amr", new File(audioPath));
    }
    kjh.post("http://www.oschina.net/action/api/tweet_pub", params,
            new HttpCallBack() {
                @Override
                public void onPreStart() {
                    super.onPreStart();
                    // 设置上传动画
                }

                @Override
                public void onSuccess(String t) {
                    super.onSuccess(t);
                    KJLoger.debug("发表动弹:" + t);
                    // 隐藏上传动画
                }

                @Override
                public void onFailure(int errorNo, String strMsg) {
                    super.onFailure(errorNo, strMsg);
                    // 设置上传动画失败图标
                }
            });
}
 
示例14
private void update() {
    kjh.get("http://www.kymjs.com/api/version", new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug("检测更新===" + t);
            checkVersion(t);
        }
    });
}
 
示例15
private void download(String url) {
    final File folder = FileUtils.getSaveFolder(AppConfig.saveFolder);
    File tempFile = new File(folder + "/kjblog.apk.tmp");
    if (tempFile.exists()) {
        tempFile.delete();
    }
    ViewInject.toast("正在为你下载新版本");
    kjh.download(folder + "/kjblog.apk", url, new HttpCallBack() {
        /**
         * 下载过程
         */
        @Override
        public void onLoading(long count, long current) {
            super.onLoading(count, current);
        }

        /**
         * 下载完成,开始安装
         */
        @Override
        public void onSuccess(byte[] t) {
            super.onSuccess(t);
            SystemTool.installApk(outsideAty, new File(folder
                    + "/kjblog.apk"));
        }
    });
}
 
示例16
private void refresh() {
    kjh.get(ACTIVE_HOST, new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug(TAG + "网络请求:" + t);
            if (t != null && !t.equals(cache)) {
                ActiveList dataRes = Parser.xmlToBean(ActiveList.class, t);
                if (adapter == null) {
                    adapter = new ActiveAdapter(mListView, dataRes
                            .getEvents(), R.layout.item_list_active);
                    mListView.setAdapter(adapter);
                } else {
                    adapter.refresh(dataRes.getEvents());
                }
            }
            mEmptyLayout.dismiss();
        }

        @Override
        public void onFailure(int errorNo, String strMsg) {
            super.onFailure(errorNo, strMsg);
            if (adapter != null && adapter.getCount() > 0) {
                return;
            } else {
                mEmptyLayout.setErrorType(EmptyLayout.NODATA);
            }
        }

        @Override
        public void onFinish() {
            super.onFinish();
            mRefreshLayout.onPullDownRefreshComplete();
        }
    });
}
 
示例17
private void refresh() {
    kjh.get(MY_BLOG_HOST, new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug("博客列表:" + t);
            if (t != null) {
                List<Blog> datas = Parser.getBlogList(t);
                adapter = new BlogAdapter(mList, datas);
                mList.setAdapter(adapter);
            }
            mEmptyLayout.dismiss();
        }

        @Override
        public void onFailure(int errorNo, String strMsg) {
            super.onFailure(errorNo, strMsg);
            if (adapter != null && adapter.getCount() > 0) {
                return;
            } else {
                mEmptyLayout.setErrorType(EmptyLayout.NODATA);
            }
        }

        @Override
        public void onFinish() {
            super.onFinish();
            mRefreshLayout.onPullDownRefreshComplete();
            mRefreshLayout.onPullUpRefreshComplete();
        }
    });
}
 
示例18
private void refresh() {
    kjh.get(OSCBLOG_HOST, new HttpCallBack() {
        @Override
        public void onSuccess(String t) {
            super.onSuccess(t);
            KJLoger.debug(TAG + "网络请求:" + t);
            if (t != null && !t.equals(cache)) {
                List<BlogAuthor> datas = Parser.getBlogAuthor(t);
                if (adapter == null) {
                    adapter = new BlogAuthorAdapter(mListView, datas,
                            R.layout.item_blog_author);
                    mListView.setAdapter(adapter);
                } else {
                    adapter.refresh(datas);
                }
            }
            mEmptyLayout.dismiss();
        }

        @Override
        public void onFailure(int errorNo, String strMsg) {
            super.onFailure(errorNo, strMsg);
            if (adapter != null && adapter.getCount() > 0) {
                return;
            } else {
                mEmptyLayout.setErrorType(EmptyLayout.NODATA);
            }
        }

        @Override
        public void onFinish() {
            super.onFinish();
            mRefreshLayout.onPullDownRefreshComplete();
        }
    });
}
 
示例19
/**
 * 发起get请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public static Request<byte[]> get(String url, HttpParams params, boolean useCache,
                                  HttpCallBack callback) {
    if (params != null) {
        url += params.getUrlParams();
    } else {
        params = new HttpParams();
    }
    Request<byte[]> request = new FormRequest(Request.HttpMethod.GET, url, params,
            callback);
    request.setShouldCache(useCache);
    getKJHttp().doRequest(request);
    return request;
}
 
示例20
/**
 * 发起post请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public static Request<byte[]> post(String url, HttpParams params,
                                   boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new FormRequest(HttpMethod.POST, url, params,
            callback);
    request.setShouldCache(useCache);
    getKJHttp().doRequest(request);
    return request;
}
 
示例21
/**
 * 使用JSON传参的post请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> jsonPost(String url, HttpParams params,
                                boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new JsonRequest(HttpMethod.POST, url, params,
            callback);
    request.setShouldCache(useCache);
    getKJHttp().doRequest(request);
    return request;
}
 
示例22
/**
 * 使用JSON传参的get请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> jsonGet(String url, HttpParams params,
                               boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new JsonRequest(HttpMethod.GET, url, params,
            callback);
    request.setShouldCache(useCache);
    getKJHttp().doRequest(request);
    return request;
}
 
示例23
/**
 * 下载
 *
 * @param storeFilePath 文件保存路径。注,必须是一个file路径不能是folder
 * @param url           下载地址
 * @param callback      请求中的回调方法
 */
public static DownloadTaskQueue download(String storeFilePath, String url,
                                         HttpCallBack callback) {
    FileRequest request = new FileRequest(storeFilePath, url, callback);
    HttpConfig config = getKJHttp().getConfig();
    request.setConfig(config);
    config.mController.add(request);
    return config.mController;
}
 
示例24
public ImageRequest(String url, int maxWidth, int maxHeight,
                    HttpCallBack callback) {
    super(HttpMethod.GET, url, callback);
    mHeaders.put("cookie", HttpConfig.sCookie);
    mMaxWidth = maxWidth;
    mMaxHeight = maxHeight;
}
 
示例25
/**
 * 发起get请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> get(String url, HttpParams params, boolean useCache,
                           HttpCallBack callback) {
    if (params != null) {
        url += params.getUrlParams();
    }
    Request<byte[]> request = new FormRequest(HttpMethod.GET, url, params,
            callback);
    request.setShouldCache(useCache);
    doRequest(request);
    return request;
}
 
示例26
/**
 * 发起post请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> post(String url, HttpParams params,
                            boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new FormRequest(HttpMethod.POST, url, params,
            callback);
    request.setShouldCache(useCache);
    doRequest(request);
    return request;
}
 
示例27
/**
 * 使用JSON传参的post请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> jsonPost(String url, HttpParams params,
                                boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new JsonRequest(HttpMethod.POST, url, params,
            callback);
    request.setShouldCache(useCache);
    doRequest(request);
    return request;
}
 
示例28
/**
 * 使用JSON传参的get请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 */
public Request<byte[]> jsonGet(String url, HttpParams params,
                               HttpCallBack callback) {
    Request<byte[]> request = new JsonRequest(HttpMethod.GET, url, params,
            callback);
    doRequest(request);
    return request;
}
 
示例29
/**
 * 使用JSON传参的get请求
 *
 * @param url      地址
 * @param params   参数集
 * @param callback 请求中的回调方法
 * @param useCache 是否缓存本条请求
 */
public Request<byte[]> jsonGet(String url, HttpParams params,
                               boolean useCache, HttpCallBack callback) {
    Request<byte[]> request = new JsonRequest(HttpMethod.GET, url, params,
            callback);
    request.setShouldCache(useCache);
    doRequest(request);
    return request;
}
 
示例30
/**
 * 下载
 *
 * @param storeFilePath 文件保存路径。注,必须是一个file路径不能是folder
 * @param url           下载地址
 * @param callback      请求中的回调方法
 */
public DownloadTaskQueue download(String storeFilePath, String url,
                                  HttpCallBack callback) {
    FileRequest request = new FileRequest(storeFilePath, url, callback);
    request.setConfig(mConfig);
    mConfig.mController.add(request);
    return mConfig.mController;
}