Sprache

AlarmManager.SetWindow Methode

Definition

Überlädt

Name Beschreibung
SetWindow(AlarmType, Int64, Int64, PendingIntent)

Planen Sie einen Alarm, der innerhalb eines bestimmten Zeitfensters übermittelt werden soll.

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

Direkte Rückrufversion von setWindow(int,long,long,PendingIntent).

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

Direkte Rückrufversion von setWindow(int,long,long,PendingIntent).

SetWindow(AlarmType, Int64, Int64, PendingIntent)

Planen Sie einen Alarm, der innerhalb eines bestimmten Zeitfensters übermittelt werden soll.

[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

Parameter

type
AlarmType

int: Art des Alarms. Der Wert ist eine der folgenden: RTC_WAKEUP RTC-ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME

windowStartMillis
Int64

long: Die früheste Zeit in Millisekunden, dass der Alarm geliefert werden soll, ausgedrückt in den Einheiten der entsprechenden Uhr (je nach Alarmtyp).

windowLengthMillis
Int64

long: Die Länge des angeforderten Lieferfensters in Millisekunden. Der Alarm wird nicht später als diese vielen Millisekunden nach windowStartMillis geliefert. Beachten Sie, dass dieser Parameter eine Dauer und nicht der Zeitstempel des Endes des Fensters ist.

operation
PendingIntent

PendingIntent: Aktion, die ausgeführt werden soll, wenn der Alarm abläuft; in der Regel stammt von IntentSender.getBroadcast(). Dieser Wert darf nicht NULL sein.

Attribute

Hinweise

Planen Sie einen Alarm, der innerhalb eines bestimmten Zeitfensters übermittelt werden soll. Diese Methode ähnelt set(int,long,PendingIntent), ermöglicht der Anwendung jedoch die genaue Kontrolle des Grads, in dem die Übermittlung durch das Betriebssystem angepasst werden kann. Mit dieser Methode kann eine Anwendung die Akkuoptimierungen nutzen, die sich aus der Übermittlungsbatchierung ergeben, auch wenn sie bescheidene Zeitachsenanforderungen für ihre Alarme aufweist. Hinweis: Beginnend mit API-Build.VERSION_CODES. S, Apps sollten nicht in einem Fenster von weniger als 10 Minuten übergeben werden. Das System versucht am besten, kleinere Fenster aufzunehmen, wenn der Alarm in naher Zukunft ausgelöst werden soll, aber es gibt keine Garantien, und die App sollte erwarten, dass ein Fenster kleiner als 10 Minuten ist, um bis zu 10 Minuten verlängert zu werden. Diese Methode kann auch verwendet werden, um strenge Anordnungsgarantien zwischen mehreren Alarmen zu erreichen, indem sichergestellt wird, dass die für jeden Alarm angeforderten Fenster nicht überschneiden. Wenn keine präzise Lieferung erforderlich ist, sollten Anwendungen die Standardsatzmethode (int,long,PendingIntent) verwenden. Dies bietet dem Betriebssystem die größte Flexibilität, um Die Aktivierungen und den Akkueinsatz zu minimieren. Für Alarme, die zu genau festgelegten Zeiten ohne akzeptable Variation geliefert werden müssen, können Anwendungen setExact(int,long,PendingIntent) verwenden.

Siehe auch:

Android-Referenz für android.app.AlarmManager.setWindow.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

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

Direkte Rückrufversion von 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

Parameter

type
AlarmType

int: Der Wert ist eine der folgenden: RTC_WAKEUP RTC-ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME

windowStartMillis
Int64

long

windowLengthMillis
Int64

long

tag
String

Zeichenfolge: Dieser Wert kann null sein.

listener
AlarmManager.IOnAlarmListener

AlarmManager.OnAlarmListener: Dieser Wert darf nicht null sein.

targetHandler
Handler

Handler: Dieser Wert kann null sein.

Attribute

Hinweise

Direkte Rückrufversion von setWindow(int,long,long,PendingIntent). Anstatt beim Erreichen der Alarmzeit einen PendingIntent zu senden, stellt diese Variante eine OnAlarmListener-Instanz bereit, die zu diesem Zeitpunkt aufgerufen wird. Listener-basierte Alarme können vom Android-System abgebrochen werden, wenn der aufrufende Prozess keine Komponenten mehr ausgeführt wird, z. B. Aktivität, Dienst oder ContentProvider, sodass Sie diese APIs nur verwenden müssen, wenn Sie nach Abschluss der aktuellen Komponente keine Alarme empfangen müssen, und stellen Sie außerdem sicher, dass sie (OnAlarmListener) abbrechen(OnAlarmListener). Wenn Sie diese APIs beispielsweise aus einer Aktivität verwenden, stellen Sie sicher, dass die entsprechenden Alarme abgebrochen werden, wenn die Aktivität abgeschlossen ist. Wenn Sie den Alarm auch danach erhalten müssen, verwenden Sie die PendingIntent-basierten APIs. Die OnAlarmListener onAlarm()-Methode wird über den angegebenen Zielhandler oder in der Hauptschleife der Anwendung aufgerufen, wenn NULL als Zielhandlerparameter übergeben wird. Hinweis: Beginnend mit API-Build.VERSION_CODES. S, Apps sollten nicht in einem Fenster von weniger als 10 Minuten übergeben werden. Das System versucht am besten, kleinere Fenster aufzunehmen, wenn der Alarm in naher Zukunft ausgelöst werden soll, aber es gibt keine Garantien, und die App sollte erwarten, dass ein Fenster kleiner als 10 Minuten ist, um bis zu 10 Minuten verlängert zu werden.

Siehe auch:

Android-Referenz für android.app.AlarmManager.setWindow.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

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

Direkte Rückrufversion von 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

Parameter

type
AlarmType

int: Der Wert ist eine der folgenden: RTC_WAKEUP RTC-ELAPSED_REALTIME_WAKEUP ELAPSED_REALTIME

windowStartMillis
Int64

long

windowLengthMillis
Int64

long

tag
String

Zeichenfolge: Dieser Wert kann null sein.

executor
IExecutor

Executor: Dieser Wert darf nicht NULL sein.

listener
AlarmManager.IOnAlarmListener

AlarmManager.OnAlarmListener: Dieser Wert darf nicht null sein.

Attribute

Hinweise

Direkte Rückrufversion von setWindow(int,long,long,PendingIntent). Anstatt beim Erreichen der Alarmzeit einen PendingIntent zu senden, stellt diese Variante eine OnAlarmListener-Instanz bereit, die zu diesem Zeitpunkt aufgerufen wird. Listener-basierte Alarme können vom Android-System abgebrochen werden, wenn der aufrufende Prozess keine Komponenten mehr ausgeführt wird, z. B. Aktivität, Dienst oder ContentProvider, sodass Sie diese APIs nur verwenden müssen, wenn Sie nach Abschluss der aktuellen Komponente keine Alarme empfangen müssen, und stellen Sie außerdem sicher, dass sie (OnAlarmListener) abbrechen(OnAlarmListener). Wenn Sie diese APIs beispielsweise aus einer Aktivität verwenden, stellen Sie sicher, dass die entsprechenden Alarme abgebrochen werden, wenn die Aktivität abgeschlossen ist. Wenn Sie den Alarm auch danach erhalten müssen, verwenden Sie die PendingIntent-basierten APIs. Die OnAlarmListener onAlarm()-Methode wird über den angegebenen Zielausführer aufgerufen. Hinweis: Beginnend mit API-Build.VERSION_CODES. S, Apps sollten nicht in einem Fenster von weniger als 10 Minuten übergeben werden. Das System versucht am besten, kleinere Fenster aufzunehmen, wenn der Alarm in naher Zukunft ausgelöst werden soll, aber es gibt keine Garantien, und die App sollte erwarten, dass ein Fenster kleiner als 10 Minuten ist, um bis zu 10 Minuten verlängert zu werden.

Siehe auch:

Inhalte und Codebeispiele auf dieser Seite unterliegen den in der Inhaltslizenz beschriebenen Lizenzen. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder dessen Tochtergesellschaften.

Letzte Aktualisierung: 2026-08-03 UTC.

Android-Referenz für android.app.AlarmManager.setWindow.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: