Pregunta

Ok, así que tengo dos BroadcastReceiver registrado. Cuando la aplicación que se cierra tanto el fuego en el momento apropiado y hacer las cosas adecuadas.

Si se cierra luego mató a la aplicación (digamos con un AppKiller), los receptores nunca reciben sus emisiones, y no pasa nada.

Es de suponer que lo mismo sucede si la aplicación de los padres muere por falta de memoria, así que ¿cómo me aseguro de esas emisiones son despedidos / recibido. Los estados de la API que incluso si la aplicación se mató debería fuego, ¿Alguien más tiene experiencia con esta situación?

Si se ayuda a mi manifiesto es:

<!-- receivers for AlarmManager --> 
<receiver 
android:exported="true" 
android:label="Shift roster updating calendar." 
android:name="com.skooter.shiftroster.backend.service.UpdateCalendar" 
> 
</receiver> 
<receiver 
android:exported="true" 
android:label="Shift roster checking alarm." 
android:name="com.skooter.shiftroster.backend.service.SetWakeup" 
> 
</receiver> 

y nada esotérico está pasando en el AlarmManager / BroadcastReceivers

¿Fue útil?

Solución

  

Es de suponer que lo mismo sucede si   la aplicación de los padres muere debido a la baja   memoria

Se presume incorrectamente. Los llamados "asesinos de tareas" están explotando un API particular, uno que no se utiliza en condiciones de poca memoria. El "asesino tarea" nukes API todo, incluyendo las alarmas programadas.

Por otra parte, la aplicación de los padres esperemos que no está en la memoria en el primer lugar. El punto de usar AlarmManager es por lo que su "aplicación de los padres" no está en torno a tomar la memoria cuando no está haciendo nada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top