title: Overriding pre/post execute in AsyncTask and calling super.onPre/PostExecute
body: <p>Is it mandatory to call super.onPreExecute when overriding onPreExecute in an AsyncTask?
  What does AsyncTask.onPreExecute and other methods actually do?
  Same question for onPostExecute and onCancelled</p>
  
  <pre><code>public class MyAsyncTask extends AsyncTask&lt;Void, Void, Boolean&gt; 
  {
  
  @Override
  protected void onCancelled(Boolean result) {
  
      super.onCancelled(result);   //&lt;-DO I HAVE TO?
  
              //My onCancelled code below
  
  
  }
  
  @Override
  protected void onPostExecute(Boolean result) {
  
      super.onPostExecute(result);  //&lt;-DO I HAVE TO?
  
              //My onPostExecute code below
  }
  
  @Override
  protected void onPreExecute() {
  
      super.onPreExecute();  //&lt;-DO I HAVE TO?
  
              //My onPreExecute code below
  
  }
  
  @Override
  protected Boolean doInBackground(Void... params) {
  
      return null;
  }
  </code></pre>