Lenguaje

AlarmManager.SetExact Método

Definición

Sobrecargas

Nombre Description
SetExact(AlarmType, Int64, PendingIntent)

Programe una alarma para que se entregue precisamente en el momento indicado.

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

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

SetExact(AlarmType, Int64, PendingIntent)

Programe una alarma para que se entregue precisamente en el momento indicado.

[Android.Runtime.Register("setExact", "(IJLandroid/app/PendingIntent;)V", "GetSetExact_IJLandroid_app_PendingIntent_Handler")]
[Android.Runtime.RequiresPermission("android.permission.SCHEDULE_EXACT_ALARM")]
public virtual void SetExact(Android.App.AlarmType type, long triggerAtMillis, Android.App.PendingIntent operation);
[<Android.Runtime.Register("setExact", "(IJLandroid/app/PendingIntent;)V", "GetSetExact_IJLandroid_app_PendingIntent_Handler")>]
[<Android.Runtime.RequiresPermission("android.permission.SCHEDULE_EXACT_ALARM")>]
abstract member SetExact : Android.App.AlarmType * int64 * Android.App.PendingIntent -> unit
override this.SetExact : Android.App.AlarmType * int64 * Android.App.PendingIntent -> unit

Parámetros

type
AlarmType

tipo de alarma.

triggerAtMillis
Int64

tiempo en milisegundos que la alarma debe apagarse, utilizando el reloj adecuado (dependiendo del tipo de alarma).

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 precisamente en el momento indicado. Este método es como set(int,long,PendingIntent), pero no permite que el sistema operativo ajuste el tiempo de entrega. La alarma se entregará lo más posible a la hora del desencadenador solicitada. Nota: solo las alarmas para las que hay una fuerte demanda de entrega exacta en tiempo (por ejemplo, un reloj de alarma que suena en el momento solicitado) deben programarse como exactos. Las aplicaciones no se recomienda encarecidamente usar alarmas exactas innecesariamente a medida que reducen la capacidad del sistema operativo para minimizar el uso de la batería. Nota: A partir de Build.VERSION_CODES. S, las aplicaciones destinadas al nivel 31 del SDK o superior deben solicitar el permiso de SCHEDULE_EXACT_ALARM para usar esta API, a menos que la aplicación esté exenta de restricciones de batería. El usuario y el sistema pueden revocar este permiso a través de la pantalla especial de acceso a la aplicación en Configuración. Nota: Las alarmas exactas solo deben usarse para las características orientadas al usuario. Para obtener más información, consulte Permiso de alarma exacta.

Consulte también:

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

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

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

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

[Android.Runtime.Register("setExact", "(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSetExact_IJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)]
public virtual void SetExact(Android.App.AlarmType type, long triggerAtMillis, string? tag, Android.App.AlarmManager.IOnAlarmListener listener, Android.OS.Handler? targetHandler);
[<Android.Runtime.Register("setExact", "(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSetExact_IJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)>]
abstract member SetExact : Android.App.AlarmType * int64 * string * Android.App.AlarmManager.IOnAlarmListener * Android.OS.Handler -> unit
override this.SetExact : Android.App.AlarmType * 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

triggerAtMillis
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 setExact(int,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 de OnAlarm() se invocará a través del controlador de destino especificado, o en el bucle principal de la aplicación si null se pasa como parámetro targetHandler. En versiones anteriores de Android Build.VERSION_CODES. S y Build.VERSION_CODES. TIRAMISU, las aplicaciones destinadas al nivel 31 del SDK o superior necesitan contener el permiso de SCHEDULE_EXACT_ALARM para usar esta API, a menos que la aplicación esté exenta de restricciones de batería. Nota: A partir de la versión de Android Build.VERSION_CODES. UPSIDE_DOWN_CAKE, el sistema quitará explícitamente las alarmas establecidas a través de esta API cuando la aplicación que realiza la llamada salga del ciclo de vida.

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

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