2

我正在使用 Android 3.0 和 3.1。我在我的应用程序中使用了 AndroidHttpClient 类,并在执行时使用了 execute(HttpUriRequest)。

我在 UI 中有一个进度条,我想在发送数据时对其进行更新。有什么方法可以从 AndroidHttpClient 获取有关数据发送进度的通知(我猜它不会一次性发送整个缓冲区)?

谢谢

4

2 回答 2

1

要在数据发送到服务器时跟踪数据的进度,您必须包装正在发送的底层 HTTP 实体。如果您将HttpEntityWrapper子类化并覆盖,则可以使用FilterOutputStreamwriteTo()包装OutputStream ,这是写入服务器的流。

于 2011-09-06T09:08:45.307 回答
0

我认为您需要 AsyncTask 示例,可能会对您有所帮助::

  private class xyz extends AsyncTask<Void, Void, Void> {
            private final ProgressDialog dialog = new ProgressDialog(tranning.this);
            @Override
            protected void onPreExecute() {
                this.dialog.setMessage("Please Wait...");
                this.dialog.show();

                // put your code which preload with processDialog  
            }

            @Override
            protected Void doInBackground(Void... arg0) {

                // put you code here


                return null;
            }
            @Override
            protected void onPostExecute(final Void unused) {
                //if (this.dialog.isShowing()) {
                //  this.dialog.dismiss();

                //}

            }
        }

并在你的主课中使用它::

 new xyz().execute();
于 2011-09-06T09:00:02.707 回答