开发者

Why the onProgressUpdate() of AsyncTask<> interface is never called?

The onProgressUpdate() is never called, can you tell me why?

private class LoginMe extends AsyncTask<Context, Void, Boolean> {

    @Override
    protected Boolean doInBackground(Context... arg0) {
        doSomething();
        return true;
    }

    @Override
    protected void onProgressUpdate(Void... 开发者_Python百科v) {
        super.onProgressUpdate(v);
        Log.d("Dev", "Im in onProgressUpdate()");
    }

    @Override
    protected void onPostExecute(Boolean result) {
        super.onPostExecute(result);
        if (result) {
            doOne();
        } else {
            doTwo();
        }
    }
}


You have to call publishProgress from within doInBackground manually.

doInBackground(Params...), invoked on the background thread immediately after onPreExecute() finishes executing. ... This step can also use publishProgress(Progress...) to publish one or more units of progress. These values are published on the UI thread, in the onProgressUpdate(Progress...) step.

http://developer.android.com/reference/android/os/AsyncTask.html

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜