Muy buenas chicos, resulta que tengo una app en android que, al pasar una fecha a un script php me devuelve una lista de actividades y sus horarios, y me los ordena en un listview, hasta aqui todo sin problemas, pero ahora quiero hacer que el planificador que estoy creando te avise cuando quede menos de media hora para que empiece una de las aactividades, para ello uso un broadcast receiver, usando un ACTION_TIMETICK, que manda una señal cada minuto que pasa y no puede ser configurado en el manifest, sino programaticamente, este es mi código.
//Creo el intentfilter
IntentFilter mTime = new IntentFilter(Intent.ACTION_TIME_TICK);
//Registro el receiver
registerReceiver(mtimeInfoReceiver, mTime);
//Y debajo creo el broadcast receiver
private BroadcastReceiver mtimeInfoReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context c, Intent i) {
//En cada tick 'minuto' enviado, miro la hora y hago los calculos para saber si falta poco para empezar
//Esta parte aun no esta hecha, pero no tengo problema con ella.
Calendar calendar=Calendar.getInstance();
Toast.makeText(getApplicationContext(), "La hora--- :-"+calendar.getTime(), Toast.LENGTH_LONG).show();
}
};
Esto funciona correctamente, cada minuto me salta un toast con la hora, solo falta restar la hora de cada actividad de la hora actual para hacer saltar las notificaciones.
Mi problema es que esto solo funciona si tengo la app abierta, en cuanto la minimizo o la cierro el broadcast receiver deja de funcionar, hay alguna manera de hacer que el broadcast receiver siga enviando el ACTION_TIMETICK aunque estes en otra app o tengas el movil bloqueado, etc?
Gracias de antemano, saludos.