Cómo eliminar / eliminar / eliminar / detener completamente una AsyncTask en Android

Hice una aplicación que descarga videos de nuestro servidor. El problema es:

Cuando cancelo la descarga llamo:

myAsyncTask.cancel(true)

Me di cuenta quemyAsyncTask no se detiene en llamar a cancelar ... miProgressDialog sigue subiendo y es como saltar de estado a estado mostrándome que cada vez que cancelo y comienzo de nuevo,AsyncTask Al hacer clic en el botón de descarga, aparecerá una nueva.AsyncTask comienza ... Cada vez que hago clic en descargar ... luego cancelo, luego nuevamente descarga un archivo separadoAsyncTask empieza.

Por que esmyAsynTask.cancle(true) no cancelando mi tarea? No lo quiero más en el fondo. Solo quiero apagarlo completamente si hago clic en cancelar.

Cómo hacerlo ?

E D I T:

Gracias a gtumca-MAC, y los otros que me ayudaron lo hicieron por:

while (((count = input.read(data)) != -1) && (this.isCancelled()==false)) 
{
    total += count;
    publishProgress((int) (total * 100 / lenghtOfFile));
    output.write(data, 0, count);
}

¡¡¡Gracias!!!

Respuestas a la pregunta(7)

Su respuesta a la pregunta