需要一个示例,说明如何执行异步HTTP请求

时间:2010-02-23 08:45:56

标签: android http multithreading asynchronous task

我正在使用Web服务,所以我希望在我的主线程运行时使用异步线程进行HTTP身份验证请求,然后再使用另一个线程进行其他服务请求。

想看一个如何做到这一点以及如何在主应用中以某种方式显示忙碌消息的好例子。主应用程序如何知道线程何时完成?如果我的线程遇到异常,我该怎么处理呢?

稍后会发送HTTP请求,使用第一个身份验证请求设置的相同Cookie,以便后来的请求会选择相同的Cookie并且只是工作吗?

3 个答案:

答案 0 :(得分:6)

答案 1 :(得分:5)

答案 2 :(得分:1)

AndroidAsync库我写的是为了自动处理它,它将在后台运行并重新调用UI线程:

https://github.com/koush/AndroidAsync

// url is the URL to download. The callback will be invoked on the UI thread
// once the download is complete.
AsyncHttpClient.getDefaultInstance().get(url, new AsyncHttpClient.StringCallback() {
    // Callback is invoked with any exceptions/errors, and the result, if available.
    @Override
    public void onCompleted(Exception e, String result) {
        if (e != null) {
            e.printStackTrace();
            return;
        }
        System.out.println("I got a string: " + result);
    }
});