Причина, по которой вы не останавливаетесь, состоит в том, что процесс (doInBackground ()) работает до тех пор, пока не завершится.Поэтому вы должны проверить, отменен ли поток перед выполнением чего-либо:
if(!isCancelled()){
// Do your stuff
}
Так что, в принципе, если поток не отменен, сделайте это, в противном случае пропустите его :) Может быть полезно проверить этораз во время вашей работы, особенно перед тем, как брать вещи.
Также может быть полезно «очистить» alittle в
onCancelled();
Документация для AsyncTask:
http://developer.android.com/reference/android/os/AsyncTask.html
Надеюсь, это поможет!