OK, resulta que el service call
hizo trabajo, por lo que puedo decir. Sólo tenía que ajustar el comando un poco.
Lo más importante era determinar correctamente el ID de la alarma. Utilizando el enlace aquí se puede encontrar el ID. Tenga en cuenta que el ID se encuentra en una sección específica del dumpsys alarm
mando. El formato de la salida para ese comando es confuso al principio, pero esencialmente usted está buscando algo como:
donde ###
en esto es un número que representa el número de alarma (no ###
literalmente)
### pending alarms:
...
...
...
RTC_WAKEUP #88: Alarm{5d74fad type 0 origWhen 1677671101000 whenElapsed 1028621179 com.sec.android.app.clockpackage}
tag=*walarm*:com.samsung.sec.android.clockpackage.alarm.UPCOMING_ALERT
type=RTC_WAKEUP origWhen=2023-03-01 04:45:01.000 window=0 exactAllowReason=permission repeatInterval=0 count=0 flags=0x5
policyWhenElapsed: requester=+7h4m50s571ms app_standby=-1m20s270ms device_idle=-- battery_saver=-55s468ms tare=-2m1s488ms gms_manager=--
whenElapsed=+7h4m50s571ms maxWhenElapsed=+7h4m50s571ms
operation=PendingIntent{493d673: PendingIntentRecord{4efa417 com.sec.android.app.clockpackage broadcastIntent}}
idle-options=Bundle[{android.pendingIntent.backgroundActivityAllowed=false, android:broadcast.temporaryAppAllowlistReasonCode=302, android:broadcast.temporaryAppAllowlistDuration=10000, android:broadcast.temporaryAppAllowlistReason=, android:broadcast.temporaryAppAllowlistType=0}]
RTC_WAKEUP #89: Alarm{e3b8930 type 0 origWhen 1677671507448 whenElapsed 1029027627 com.samsung.android.rubin.app}
tag=*walarm*:com.samsung.android.rubin.alarm.ACTION_PENDING_INTENT
type=RTC_WAKEUP origWhen=2023-03-01 04:51:47.448 window=+2h0m0s0ms repeatInterval=0 count=0 flags=0x0
policyWhenElapsed: requester=+7h11m37s19ms app_standby=-1m20s270ms device_idle=-- battery_saver=-55s352ms tare=-1h17m15s404ms gms_manager=--
whenElapsed=+7h11m37s19ms maxWhenElapsed=+9h11m37s19ms
operation=PendingIntent{e4639a9: PendingIntentRecord{84e3864 com.samsung.android.rubin.app broadcastIntent}}
...
...
...
En este ejemplo, RTC_WAKEUP #88
es la alarma pendiente. En esa cadena, la salida Alarm{5d74fad type
muestra el ID de la alarma, que es 5d74fad
.
Ahora, ejecutando:
service call alarm 3 s16 5d74fad
borró mi alarma. No puedo decir si esto funciona para otros o no. A mí me ha funcionado. La salida del comando es nebulosa en el mejor de los casos. Básicamente tuve que esperar al día siguiente. Una cosa que noté, sin embargo, fue que cuando ejecuté este comando, mi teléfono cambió a GMT (en lugar de la hora local). Basta con ir a la configuración de la hora de la fecha y activar / desactivar la hora automática de la luz del día y la hora automática de la fecha fija que.
1 votos
No
dumpsys alarm
¿también muestra el nombre del paquete de la aplicación de origen?0 votos
Sí, es correcto. Para la posteridad, estoy usando esto como un go-by: stackoverflow.com/questions/28742884/
0 votos
He aprendido que la alarma fantasma proviene del modo de suspensión, que he borrado, pero la alarma sigue viva. No tengo forma de borrar esta alarma por lo que veo.