AlarmManager.Set Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
| Nome | Descrizione |
|---|---|
| Set(AlarmType, Int64, String, AlarmManager+IOnAlarmListener, Handler) |
Versione di callback diretta di set(int,long,PendingIntent). |
| Set(AlarmType, Int64, PendingIntent) |
Pianificare un allarme. |
Set(AlarmType, Int64, String, AlarmManager+IOnAlarmListener, Handler)
Versione di callback diretta di 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
Parametri
- type
- AlarmType
int: tipo di allarme. Il valore è uno dei seguenti: RTC_WAKEUP rtc ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME
- triggerAtMillis
- Int64
long: tempo in millisecondi in cui l'allarme deve essere spento, utilizzando l'orologio appropriato (a seconda del tipo di allarme).
- tag
- String
Stringa: stringa che descrive l'allarme, usata per la registrazione e l'attribuzione dell'uso della batteria. Questo valore può essere Null.
- listener
- AlarmManager.IOnAlarmListener
AlarmManager.OnAlarmListener: istanza onAlarmListener il cui metodo onAlarm() verrà chiamato quando viene raggiunta l'ora dell'allarme. Una determinata istanza di OnAlarmListener può essere solo la destinazione di un singolo allarme in sospeso, così come un determinato PendingIntent può essere usato solo con un allarme alla volta. Questo valore non può essere Null.
- targetHandler
- Handler
Gestore: gestore in cui eseguire il callback onAlarm() del listener oppure null per eseguire tale callback nel looper principale.
- Attributi
Commenti
Versione di callback diretta di set(int,long,PendingIntent). Anziché fornire un oggetto PendingIntent da inviare quando viene raggiunto l'ora dell'allarme, questa variante fornisce un'istanza OnAlarmListener che verrà richiamata in quel momento. Gli allarmi basati sul listener possono essere annullati dal sistema Android ogni volta che il processo chiamante non dispone più di componenti in esecuzione, ad esempio Attività, Servizio o ContentProvider, quindi usare queste API solo quando non è necessario ricevere avvisi al termine del componente corrente e assicurarsi anche di annullarli (OnAlarmListener) quando lo fa. Ad esempio, se si usano queste API da un'attività, assicurarsi di annullare i rispettivi allarmi al termine dell'attività. Se è necessario ricevere l'allarme anche dopo, usare le API basate su PendingIntent. Il metodo onAlarmListener onAlarm() verrà richiamato tramite il gestore di destinazione specificato oppure nel looper principale dell'applicazione se null viene passato come parametro targetHandler.
Informazioni di riferimento su Android per android.app.AlarmManager.set.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.
Si applica a
Set(AlarmType, Int64, PendingIntent)
Pianificare un allarme.
[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
Parametri
- type
- AlarmType
int: tipo di allarme. Il valore è uno dei seguenti: RTC_WAKEUP rtc ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME
- triggerAtMillis
- Int64
long: tempo in millisecondi in cui l'allarme deve essere spento, utilizzando l'orologio appropriato (a seconda del tipo di allarme).
- operation
- PendingIntent
PendingIntent: azione da eseguire quando l'allarme si spegne; in genere proviene da IntentSender.getBroadcast(). Questo valore non può essere Null.
- Attributi
Commenti
Pianificare un allarme. Nota: per le operazioni di intervallo (tick, timeout e così via) è più semplice e molto più efficiente usare il gestore. Se è già presente un allarme pianificato per lo stesso IntentSender, l'allarme precedente verrà prima annullato. Se il tempo di attivazione indicato è passato, l'allarme verrà attivato immediatamente. Se è già presente un allarme per questa finalità pianificata (con l'uguaglianza di due finalità definite da Intent.filterEquals), verrà rimosso e sostituito da questo. L'allarme è una trasmissione intenta che passa a un ricevitore di trasmissione registrato con Context.registerReceiver(BroadcastReceiver, IntentFilter) o tramite il <tag ricevitore> in un file di AndroidManifest.xml. Le finalità di allarme vengono recapitate con un dato aggiuntivo di tipo int denominato Intent.EXTRA_ALARM_COUNT che indica il numero di eventi di allarme passati accumulati in questa trasmissione finalità. Allarmi ricorrenti non recapitati perché il telefono è stato addormentato può avere un conteggio maggiore di uno quando consegnato. Nota: a partire dall'API 19, il tempo di attivazione passato a questo metodo viene considerato come inesattiva: l'allarme non verrà recapitato prima di questa volta, ma potrebbe essere rinviato e recapitato qualche tempo dopo. Il sistema operativo userà questo criterio per "raggruppare" gli allarmi nell'intero sistema, riducendo al minimo il numero di volte in cui il dispositivo deve "riattivarsi" e ridurre al minimo l'uso della batteria. In generale, gli allarmi programmati nel prossimo futuro non verranno posticipati fino a quando gli allarmi programmati in futuro. Con i nuovi criteri di invio in batch, le garanzie di ordinamento del recapito non sono così complesse come in precedenza. Se l'applicazione imposta più allarmi, è possibile che l'ordine effettivo di consegna di questi allarmi non corrisponda all'ordine dei tempi di consegna richiesti. Se l'applicazione ha requisiti di ordinamento rigorosi, è possibile usare altre API per ottenere il comportamento necessario; vedere setWindow(int,long,long,PendingIntent) e setExact(int,long,PendingIntent). Le applicazioni la cui destinazioneSdkVersion è precedente all'API 19 continueranno a ottenere il comportamento di allarme precedente: tutti gli allarmi pianificati verranno considerati esattamente.
Vedere anche:
Informazioni di riferimento su Android per android.app.AlarmManager.set.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.