0

如何获取 HTTP 请求的进程百分比?我有这个请求的代码:

    HttpClient requestclient = new DefaultHttpClient();
    HttpResponse requestresponse = requestclient.execute(new HttpGet("example.com"));
    StatusLine requeststatus = requestresponse.getStatusLine();
    if(requeststatus.getStatusCode() == HttpStatus.SC_OK){
        ByteArrayOutputStream requestoutput = new ByteArrayOutputStream();
        requestresponse.getEntity().writeTo(requestoutput);
        requestoutput.close();
        String requestresult = requestoutput.toString();
        return requestresult;
    } else{.
        requestresponse.getEntity().getContent().close();
        throw new IOException(requeststatus.getReasonPhrase());
    }

谢谢!

4

1 回答 1

0

HTTP 请求应该在 IntentService 或 AsyncTask 中运行。也就是说,始终在后台运行它们。

AsyncTask 具有显示完成百分比的方法:doInBackground() 中的 publishProgress() 和主 Activity 中的 onProgressUpdate()。

IntentService 可以通过将 Intent 广播回 Activity 或通过运行 progressBar 或(在 JellyBean 及更高版本中)通过使用进度通知来显示进度。

于 2012-10-27T17:23:35.213 回答