AlarmManager.Set Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
| Nom | Description |
|---|---|
| Set(AlarmType, Int64, String, AlarmManager+IOnAlarmListener, Handler) |
Version de rappel directe de set(int,long,PendingIntent). |
| Set(AlarmType, Int64, PendingIntent) |
Planifiez une alarme. |
Set(AlarmType, Int64, String, AlarmManager+IOnAlarmListener, Handler)
Version de rappel directe de set(int,long,PendingIntent).
[Android.Runtime.Register("set", "(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSet_IJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)]
public virtual void Set(Android.App.AlarmType type, long triggerAtMillis, string? tag, Android.App.AlarmManager.IOnAlarmListener listener, Android.OS.Handler? targetHandler);
[<Android.Runtime.Register("set", "(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V", "GetSet_IJLjava_lang_String_Landroid_app_AlarmManager_OnAlarmListener_Landroid_os_Handler_Handler", ApiSince=24)>]
abstract member Set : Android.App.AlarmType * int64 * string * Android.App.AlarmManager.IOnAlarmListener * Android.OS.Handler -> unit
override this.Set : Android.App.AlarmType * int64 * string * Android.App.AlarmManager.IOnAlarmListener * Android.OS.Handler -> unit
Paramètres
- type
- AlarmType
int : type d’alarme. La valeur est l’une des valeurs suivantes : RTC_WAKEUP ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME RTC
- triggerAtMillis
- Int64
long : durée en millisecondes pendant laquelle l’alarme doit s’éteindre, à l’aide de l’horloge appropriée (selon le type d’alarme).
- tag
- String
Chaîne : chaîne décrivant l’alarme, utilisée pour la journalisation et l’attribution de l’utilisation de la batterie. Cette valeur peut être null.
- listener
- AlarmManager.IOnAlarmListener
AlarmManager.OnAlarmListener : instance OnAlarmListener dont la méthode onAlarm() sera appelée lorsque l’heure de l’alarme est atteinte. Une instance OnAlarmListener donnée peut uniquement être la cible d’une seule alarme en attente, tout comme une instance PendingIntent donnée ne peut être utilisée qu’avec une seule alarme à la fois. Cette valeur ne peut pas être null.
- targetHandler
- Handler
Gestionnaire : gestionnaire sur lequel exécuter le rappel onAlarm() de l’écouteur ou null pour exécuter ce rappel sur le bouclage principal.
- Attributs
Remarques
Version de rappel directe de set(int,long,PendingIntent). Au lieu de fournir une instance PendingIntent à envoyer lorsque l’heure de l’alarme est atteinte, cette variante fournit une instance OnAlarmListener qui sera appelée à ce moment-là. Les alarmes basées sur l’écouteur peuvent être annulées par le système Android chaque fois que le processus appelant n’a plus de composants en cours d’exécution, tels que l’activité, le service ou contentProvider. Utilisez donc uniquement ces API lorsque vous n’avez pas besoin de recevoir d’alarmes une fois le composant actuel terminé, et veillez également à les annuler (OnAlarmListener) lorsqu’il le fait. Par exemple, si vous utilisez ces API à partir d’une activité, veillez à annuler les alarmes respectives une fois l’activité terminée. Si vous devez recevoir l’alarme même après cela, utilisez les API En attenteIntent. La méthode onAlarmListener de OnAlarm() sera appelée via le gestionnaire cible spécifié ou sur le bouclage principal de l’application si la valeur Null est passée en tant que paramètre targetHandler.
Référence Android pour android.app.AlarmManager.set.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
S’applique à
Set(AlarmType, Int64, PendingIntent)
Planifiez une alarme.
[Android.Runtime.Register("set", "(IJLandroid/app/PendingIntent;)V", "GetSet_IJLandroid_app_PendingIntent_Handler")]
public virtual void Set(Android.App.AlarmType type, long triggerAtMillis, Android.App.PendingIntent operation);
[<Android.Runtime.Register("set", "(IJLandroid/app/PendingIntent;)V", "GetSet_IJLandroid_app_PendingIntent_Handler")>]
abstract member Set : Android.App.AlarmType * int64 * Android.App.PendingIntent -> unit
override this.Set : Android.App.AlarmType * int64 * Android.App.PendingIntent -> unit
Paramètres
- type
- AlarmType
type d’alarme.
- triggerAtMillis
- Int64
durée en millisecondes pendant laquelle l’alarme doit s’éteindre, à l’aide de l’horloge appropriée (selon le type d’alarme).
- operation
- PendingIntent
Action à effectuer lorsque l’alarme s’éteint ; provient généralement de PendingIntent#getBroadcast
IntentSender.getBroadcast().
- Attributs
Remarques
Planifiez une alarme. Remarque : pour les opérations de minutage (cycles, délais d’expiration, etc.), il est plus facile et beaucoup plus efficace d’utiliser le gestionnaire. S’il existe déjà une alarme planifiée pour le même IntentSender, cette alarme précédente sera d’abord annulée. Si l’heure de déclenchement indiquée est passée, l’alarme est déclenchée immédiatement. S’il existe déjà une alarme pour cette intention planifiée (avec l’égalité de deux intentions définies par Intent.filterEquals), elle sera supprimée et remplacée par celle-ci. L’alarme est une diffusion d’intention qui va à un récepteur de diffusion que vous avez inscrit auprès de Context.registerReceiver(BroadcastReceiver, IntentFilter) ou via la <balise de récepteur> dans un fichier AndroidManifest.xml. Les intentions d’alarme sont fournies avec un supplément de données de type int appelé Intent.EXTRA_ALARM_COUNT qui indique le nombre d’événements d’alarme passés qui ont été accumulés dans cette diffusion d’intention. Les alarmes récurrentes qui n’ont pas été livrées parce que le téléphone était endormi peut avoir un nombre supérieur à un lors de la livraison. Remarque : À compter de l’API 19, le temps de déclenchement passé à cette méthode est considéré comme incorrect : l’alarme ne sera pas remise avant cette heure, mais peut être différée et remise un peu plus tard. Le système d’exploitation utilisera cette stratégie pour « traiter par lots » les alarmes sur l’ensemble du système, ce qui réduit le nombre de fois où l’appareil doit « se réveiller » et réduire l’utilisation de la batterie. En règle générale, les alarmes prévues dans le proche avenir ne seront pas différées tant que les alarmes prévues loin à l’avenir. Avec la nouvelle stratégie de traitement par lot, les garanties de commande de livraison ne sont pas aussi fortes qu’elles l’étaient précédemment. Si l’application définit plusieurs alarmes, il est possible que les commandes réelles de ces alarmes ne correspondent pas à la commande de leurs délais de livraison demandés. Si votre application a des exigences de classement fortes, il existe d’autres API que vous pouvez utiliser pour obtenir le comportement nécessaire ; consultez setWindow(int,long,long,PendingIntent) et setExact(int,long,PendingIntent). Les applications dont targetSdkVersion est antérieure à l’API 19 continueront d’obtenir le comportement d’alarme précédent : toutes leurs alarmes planifiées seront traitées comme exactes.
Voir aussi :
Référence Android pour android.app.AlarmManager.set.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.