daniel-s
6/7/2014 - 10:45 AM

AsyncTask in Android

AsyncTask in Android

private class MyTask extends AsyncTask<Void, String, Boolean>
	{
		private ProgessDialog mProgressDialog;

		public MyTask()
		{
			mProgressDialog = new ProgressDialog(mActivity);
			mProgressDialog.setTitle("ProgressDialog title");
			mProgressDialog.setMessage("ProgressDialog message...");
		}

		@Override
		protected void onPreExecute()
		{
			mProgressDialog.show();
		}

		@Override
		protected Boolean doInBackground(Void... params)
		{
			publishProgress("Doing first task...");
			// First task

			publishProgress("Doing second task...");
			// Second task

			return true;
		}

		@Override
		protected void onProgressUpdate(String... values)
		{
			mProgressDialog.setMessage(values[0]);
		}

		@Override
		protected void onPostExecute(Boolean result)
		{
			if (mProgressDialog.isShowing())
			{
				mProgressDialog.dismiss();
			}

			// Last things to do
		}
	}