2011-06-29 9 views
66

¿Hay alguna manera de ver para depurar una lista de los PendingIntent s activos en un dispositivo?Obtener lista de activos pendientes en AlarmManager

Estoy empezando a trabajar con AlarmManager y me gustaría ver si mis PendingIntent s se crean y eliminan correctamente.

También sería bueno ver qué otras PendingIntent s hay, solo como curiosidad para ver si alguna aplicación está haciendo un "trabajo extra".

Respuesta

145
adb shell dumpsys alarm > dump.txt 

dump.txt:

Current Alarm Manager state: 

    Realtime wakeup (now=1309361618777): 
    RTC_WAKEUP #5: Alarm{4822f618 type 0 com.google.android.gsf} 
    type=0 when=1309882326582 repeatInterval=522747000 count=0 
    operation=PendingIntent{47dd3740: PendingIntentRecord{4822aeb8 com.google.android.gsf broadcastIntent}} 
    ... 
    RTC#5: Alarm{4810f9d8 type 1 com.tmobile.selfhelp} 
    type=1 when=1309445979715 repeatInterval=86400000 count=1 
    operation=PendingIntent{4815a5c8: PendingIntentRecord{4810f960 com.tmobile.selfhelp startService}} 
    RTC#4: Alarm{4810f668 type 1 com.tmobile.selfhelp} 
    type=1 when=1309445959620 repeatInterval=86400000 count=1 
    operation=PendingIntent{480996e8: PendingIntentRecord{480214a0 com.tmobile.selfhelp broadcastIntent}} 
    ... 

    Elapsed realtime wakeup (now=2110632): 
    ELAPSED_WAKEUP #5: Alarm{481c24e0 type 2 com.google.android.apps.maps} 
    type=2 when=2147485512925 repeatInterval=0 count=0 
    operation=PendingIntent{47d1d3a8: PendingIntentRecord{481a2600 com.google.android.apps.maps broadcastIntent}}  
    ... 
    ELAPSED #1: Alarm{4829ce98 type 3 android} 
    type=3 when=2512653 repeatInterval=0 count=0 
    operation=PendingIntent{47eabda8: PendingIntentRecord{47f20250 android broadcastIntent}} 
    ELAPSED #0: Alarm{480f0198 type 3 com.mixzing.basic} 
    type=3 when=2439998 repeatInterval=0 count=0 
    operation=PendingIntent{48100dd8: PendingIntentRecord{480ff5a0 com.mixzing.basic broadcastIntent}} 

    Broadcast ref count: 0 

    Alarm Stats: 
    com.google.android.location 
    3ms running, 1 wakeups 
    1 alarms: act=com.google.android.location.ALARM_WAKEUP flg=0x4 
    com.google.android.gsf 
    274ms running, 4 wakeups 
    1 alarms: flg=0x4 
    1 alarms: act=com.google.android.intent.action.GTALK_RECONNECT flg=0x4 
    2 alarms: act=com.google.android.intent.action.GTALK_HEARTBEAT flg=0x4 
... 
------------------------------------------------------------------------------- 
+1

Oh, resulta que hay uno. Intenta usar 'dumpsys alarm'. He actualizado la respuesta. – inazaruk

+0

Cool gracias. – BrainCrash

+2

Acabo de verificar y puedo confirmar que no es posible hacer esto en el dispositivo a menos que tenga la raíz "Denegación de permiso: no se puede descargar AlarmManager de pid = 16910, uid = 10120" –

2

adb shell dumpsys alarma> dump.txt es el camino a seguir y que no necesita permisos de root para eso. Pero lo que obtienes desde arriba podría ser muy confuso de entender. Para entender ese volcado completamente, deberías verificar la respuesta de morphatic here.

Cuestiones relacionadas