¿Se recomienda crear instancias de una AsyncTask de un WakefulBroadcastReceiver?

Puedo instanciar unAsyncTask deWakefulBroadcastReceiver (vermi motivación para favorecerAsyncTask terminadoService), p.ej.,

public abstract class AlarmReceiver extends WakefulBroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {   
        new AsyncTask<Void,Void,Void>(){
            @Override
            protected Void doInBackground(Void... v) {
                while (true) {
                    SystemClock.sleep(7000);
                    Log.w("", "alive");
                }
            }
        }.execute();
    }

}

¿Pero es esto recomendable? En particular,¿hay problemas de ciclo de vida? asociado con la creación de instancias de unAsyncTask a partir de unaWakefulBroadcastReceiver? Por ejemplo, ¿puede miAsyncTask ser asesinado prematuramente?

(Sé que puedoenvolver la AsyncTask dentro de un servicio, pero esto parece exagerado?)

Responder

Instanciar unAsyncTask a partir de unaWakefulBroadcastReceiver no es aconsejable, ya que cualquier cosa instanciada por unBroadcastReceiver será considerado eliminable por el sistema una vez que elonReceive() el método devuelve, es decir, el sistema puede matarAsyncTask. Gracias acorsair992.

Verciclo de vida del proceso para más detalles sobre procesos eliminables.

Respuestas a la pregunta(0)

Su respuesta a la pregunta