title: Android stop asynctask
body: <p>I have created an asynctask to show progress dialog while ghetting the users location. I want to run this asynctask for 30 seconds and if in these 30 seconds I haven't found the users location I would like just to kill the task and show an error message.</p>
  
  <p>My code so far is like this:</p>
  
  <pre><code>userLocation = new AsyncTask&lt;Void, Void, Void&gt;() {
  
              private ProgressDialog locationDialog = new ProgressDialog(MainActivity.this);
  
              @Override
              protected void onPreExecute() {
                  super.onPreExecute();
                  locationDialog.setMessage(getResources().getString(R.string.getting_location));
                  locationDialog.setCancelable(false);
                  locationDialog.setIndeterminate(true);
                  locationDialog.show();
              }
  
              @Override
              protected Void doInBackground(Void... params) {
                      try {
                          latitude = locationProvider.getLatitude();
                          longitude = locationProvider.getLongitude();
                          Thread.sleep(10000);
  
                      } catch (Exception e) {
                          e.printStackTrace();
                      }
                  return null;
              }
  
              @Override
              protected void onPostExecute(Void result) {
              //  getLocation.cancel(true);
                  if (latitude != 0 &amp;&amp; longitude != 0) {
                      locationDialog.dismiss();
                      getData();
                  } else {
                      locationDialog.dismiss();
  
                      alertDialog.show();
  
                      Log.d("Couldn't get location", "Couldn't get location");
                  }
              }
          };
          userLocation.execute((Void[])null);
  </code></pre>
  
  <p>How should I edit my code so that if the latitude and longitude after 30 seconds is 0, just kill the asynctask and show some kind of error message. Any ideas?</p>