2009-12-08 18 views
7

Gracias a TasKiller tengo manera confiable de cerrar las actualizaciones viniendo a mi AppWidget desde el AlarmManager!Android - Recuperación de AlarmManager

Ahora, aparte del sarcasmo, ¿cómo me recupero de tal evento? Hasta ahora solo veo que el Alerts resucita solo después de reiniciar el teléfono.

Puedo pegar el código de recuperación en algunos lugares, como varios Activity#onCreate que pertenecen a mi aplicación y mi widget, pero ¿hay una mejor manera?

¿Qué ocurre si las alertas son correctas? ¿Hay alguna manera de detectar eso y no ejecutar AlarmManager#setRepeating?

¿O hay algún daño al ejecutarlo varias veces?

Respuesta

5

Ahora, sarcasmo a un lado, ¿cómo puedo recuperar de tal evento?

He oído que el whisky de malta simple ayuda.

Hasta ahora sólo ver que las alertas son resucitado sólo después de reiniciar el teléfono .

eso es sólo si está enganchando la emisión BOOT_COMPLETEDIntent y el restablecimiento de las alarmas.

Task Killers son notablemente minuciosos, pero no pueden detener un BroadcastReceiver de recibir transmisiones del sistema, como BOOT_COMPLETED. Le invitamos a encontrar otras transmisiones que le gustaría recibir para ayudarlo a recuperar el control y restablecer sus alarmas.

También lo que si las descripciones son bien - es Hay una manera de detectar que no ejecute AlarmManager # setRepeating? ¿O hay dañándose para ejecutarlo varias veces?

Puede cancel() una alarma existente. Por lo tanto, si le preocupan las posibles duplicaciones, cancel() la alarma actual (que, afortunadamente, falla silenciosamente si la alarma no existe), configure la alarma.

+2

Bueno, ni siquiera tiene que 'cancelar': cuando llama al cronograma con el mismo intento pendiente, su cronograma se restablece automáticamente. Gracias por su ayuda Mark, muy apreciado – Bostone

Cuestiones relacionadas