Lenguaje

AlarmManager.SetWindow Método

Definición

Sobrecargas

Nombre Description
SetWindow(AlarmType, Int64, Int64, PendingIntent)

Programe una alarma para que se entregue dentro de un período de tiempo determinado.

SetWindow(AlarmType, Int64, Int64, String, AlarmManager+IOnAlarmListener, Handler)

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent).

SetWindow(AlarmType, Int64, Int64, String, IExecutor, AlarmManager+IOnAlarmListener)

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent).

SetWindow(AlarmType, Int64, Int64, PendingIntent)

Programe una alarma para que se entregue dentro de un período de tiempo determinado.

[Android.Runtime.Register("setWindow", "(IJJLandroid/app/PendingIntent;)V", "GetSetWindow_IJJLandroid_app_PendingIntent_Handler")]
public virtual void SetWindow(Android.App.AlarmType type, long windowStartMillis, long windowLengthMillis, Android.App.PendingIntent operation);
[<Android.Runtime.Register("setWindow", "(IJJLandroid/app/PendingIntent;)V", "GetSetWindow_IJJLandroid_app_PendingIntent_Handler")>]
abstract member SetWindow : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit
override this.SetWindow : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit

Parámetros

type
AlarmType

tipo de alarma.

windowStartMillis
Int64

La primera vez, en milisegundos, que se debe entregar la alarma, expresada en las unidades del reloj adecuadas (dependiendo del tipo de alarma).

windowLengthMillis
Int64

Longitud de la ventana de entrega solicitada, en milisegundos. La alarma se entregará no más tarde de este número de milisegundos después windowStartMillisde . Tenga en cuenta que este parámetro es una duración, no la marca de tiempo del final de la ventana.

operation
PendingIntent

Acción que se debe realizar cuando se apaga la alarma; normalmente procede de PendingIntent#getBroadcast IntentSender.getBroadcast().

Atributos

Comentarios

Programe una alarma para que se entregue dentro de un período de tiempo determinado. Este método es similar a set(int,long,PendingIntent), pero permite a la aplicación controlar con precisión el grado en el que el sistema operativo podría ajustar su entrega. Este método permite a una aplicación aprovechar las optimizaciones de la batería que surgen del procesamiento por lotes de entrega incluso cuando tiene requisitos modestos de escalas de tiempo para sus alarmas. Nota: A partir de Build.VERSION_CODES de API. S, las aplicaciones no deben pasar una ventana de menos de 10 minutos. El sistema intentará adaptarse a ventanas más pequeñas si se supone que la alarma se activa en un futuro próximo, pero no hay ninguna garantía y la aplicación debe esperar que cualquier ventana menor de 10 minutos se desenlade a 10 minutos. Este método también se puede usar para lograr garantías estrictas de ordenación entre varias alarmas asegurándose de que las ventanas solicitadas para cada alarma no se intersecan. Cuando no se requiere la entrega precisa, las aplicaciones deben usar el método set(int,long,PendingIntent). Esto proporcionará al sistema operativo la mayor flexibilidad para minimizar las reactivaciones y el uso de la batería. En el caso de las alarmas que deben entregarse en horas especificadas con precisión sin variación aceptable, las aplicaciones pueden usar setExact(int,long,PendingIntent).

Consulte también:

Referencia de Android para android.app.AlarmManager.setWindow.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

SetWindow(AlarmType, Int64, Int64, String, AlarmManager+IOnAlarmListener, Handler)

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent).

[Android.Runtime.Register("setWindow", "(IJJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSetWindow_IJJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)]
public virtual void SetWindow(Android.App.AlarmType type, long windowStartMillis, long windowLengthMillis, string? tag, Android.App.AlarmManager.IOnAlarmListener listener, Android.OS.Handler? targetHandler);
[<Android.Runtime.Register("setWindow", "(IJJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSetWindow_IJJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)>]
abstract member SetWindow : Android.App.AlarmType * int64 * int64 * string * Android.App.AlarmManager.IOnAlarmListener * Android.OS.Handler -> unit
override this.SetWindow : Android.App.AlarmType * int64 * int64 * string * Android.App.AlarmManager.IOnAlarmListener * Android.OS.Handler -> unit

Parámetros

type
AlarmType

int: Value es uno de los siguientes: RTC_WAKEUP RTC ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME

windowStartMillis
Int64

long

windowLengthMillis
Int64

long

tag
String

String: este valor puede ser NULL.

listener
AlarmManager.IOnAlarmListener

AlarmManager.OnAlarmListener: este valor no puede ser null.

targetHandler
Handler

Controlador: este valor puede ser NULL.

Atributos

Comentarios

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent). En lugar de proporcionar un PendingIntent para enviarse cuando se alcanza el tiempo de alarma, esta variante proporciona una instancia de OnAlarmListener que se invocará en ese momento. El sistema Android puede cancelar las alarmas basadas en el cliente de escucha siempre que el proceso de llamada ya no tenga componentes en ejecución, como Actividad, Servicio o ContentProvider, por lo que solo se usan estas API cuando no es necesario recibir alarmas después de que finalice el componente actual y asegúrese también de cancelarlos (OnAlarmListener) cuando lo haga. Por ejemplo, si usa estas API desde una actividad, asegúrese de cancelar las alarmas respectivas cuando finalice la actividad. Si necesita recibir la alarma incluso después de eso, use las API basadas en PendingIntent. El método OnAlarmListener onAlarm() se invocará a través del controlador de destino especificado o en el bucle principal de la aplicación si se pasa null como parámetro targetHandler. Nota: A partir de Build.VERSION_CODES de API. S, las aplicaciones no deben pasar una ventana de menos de 10 minutos. El sistema intentará adaptarse a ventanas más pequeñas si se supone que la alarma se activa en un futuro próximo, pero no hay ninguna garantía y la aplicación debe esperar que cualquier ventana menor de 10 minutos se desenlade a 10 minutos.

Consulte también:

Referencia de Android para android.app.AlarmManager.setWindow.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

SetWindow(AlarmType, Int64, Int64, String, IExecutor, AlarmManager+IOnAlarmListener)

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent).

[Android.Runtime.Register("setWindow", "(IJJLjava/lang/String;Ljava/util/concurrent/Executor;Landroid/app/AlarmManager$OnAlarmListener;)V", "GetSetWindow_IJJLjava_lang_String_Ljava_util_concurrent_Executor_Landroid_app_AlarmManager_OnAlarmListener_Handler", ApiSince=34)]
public virtual void SetWindow(Android.App.AlarmType type, long windowStartMillis, long windowLengthMillis, string? tag, Java.Util.Concurrent.IExecutor executor, Android.App.AlarmManager.IOnAlarmListener listener);
[<Android.Runtime.Register("setWindow", "(IJJLjava/lang/String;Ljava/util/concurrent/Executor;Landroid/app/AlarmManager$OnAlarmListener;)V", "GetSetWindow_IJJLjava_lang_String_Ljava_util_concurrent_Executor_Landroid_app_AlarmManager_OnAlarmListener_Handler", ApiSince=34)>]
abstract member SetWindow : Android.App.AlarmType * int64 * int64 * string * Java.Util.Concurrent.IExecutor * Android.App.AlarmManager.IOnAlarmListener -> unit
override this.SetWindow : Android.App.AlarmType * int64 * int64 * string * Java.Util.Concurrent.IExecutor * Android.App.AlarmManager.IOnAlarmListener -> unit

Parámetros

type
AlarmType

int: Value es uno de los siguientes: RTC_WAKEUP RTC ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME

windowStartMillis
Int64

long

windowLengthMillis
Int64

long

tag
String

String: este valor puede ser NULL.

executor
IExecutor

Ejecutor: este valor no puede ser NULL.

listener
AlarmManager.IOnAlarmListener

AlarmManager.OnAlarmListener: este valor no puede ser null.

Atributos

Comentarios

Versión de devolución de llamada directa de setWindow(int,long,long,PendingIntent). En lugar de proporcionar un PendingIntent para enviarse cuando se alcanza el tiempo de alarma, esta variante proporciona una instancia de OnAlarmListener que se invocará en ese momento. El sistema Android puede cancelar las alarmas basadas en el cliente de escucha siempre que el proceso de llamada ya no tenga componentes en ejecución, como Actividad, Servicio o ContentProvider, por lo que solo se usan estas API cuando no es necesario recibir alarmas después de que finalice el componente actual y asegúrese también de cancelarlos (OnAlarmListener) cuando lo haga. Por ejemplo, si usa estas API desde una actividad, asegúrese de cancelar las alarmas respectivas cuando finalice la actividad. Si necesita recibir la alarma incluso después de eso, use las API basadas en PendingIntent. El método OnAlarmListener onAlarm() se invocará a través del ejecutor de destino especificado. Nota: A partir de Build.VERSION_CODES de API. S, las aplicaciones no deben pasar una ventana de menos de 10 minutos. El sistema intentará adaptarse a ventanas más pequeñas si se supone que la alarma se activa en un futuro próximo, pero no hay ninguna garantía y la aplicación debe esperar que cualquier ventana menor de 10 minutos se desenlade a 10 minutos.

Consulte también:

El contenido y los ejemplos de código de esta página están sujetos a las licencias descritas en la Licencia de contenido. Java y OpenJDK son marcas comerciales o marcas registradas de Oracle o sus filiales.

Última actualización 2026-08-03 UTC.

Referencia de Android para android.app.AlarmManager.setWindow.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a