O'Reilly logo

Asynchronous Android by Steve Liles

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Providing feedback to the user

Having started what we know to be a potentially long-running task, we probably want to let the user know that something is happening. There are a lot of ways of doing this, but a common approach is to present a dialog displaying a relevant message.

A good place to present our dialog is from the onPreExecute method of AsyncTask, which executes on the main thread. Hence, it is allowed to interact with the user interface.

The modified PrimesTask will need a reference to a Context, so that it can prepare a ProgressDialog, which it will show and dismiss in onPreExecute and onPostExecute respectively. As doInBackground has not changed, it is not shown in the following code, for brevity:

public class PrimesTask extends AsyncTask<Integer, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required