Sprache

AlarmManager.SetAlarmClock(AlarmManager+AlarmClockInfo, PendingIntent) Methode

Definition

Planen Sie einen Alarm, der einen Wecker darstellt, der verwendet wird, um den Benutzer zu benachrichtigen, wenn er abläuft.

[Android.Runtime.Register("setAlarmClock", "(Landroid/app/AlarmManager$AlarmClockInfo;Landroid/app/PendingIntent;)V", "GetSetAlarmClock_Landroid_app_AlarmManager_AlarmClockInfo_Landroid_app_PendingIntent_Handler")]
[Android.Runtime.RequiresPermission("android.permission.SCHEDULE_EXACT_ALARM")]
public virtual void SetAlarmClock(Android.App.AlarmManager.AlarmClockInfo info, Android.App.PendingIntent operation);
[<Android.Runtime.Register("setAlarmClock", "(Landroid/app/AlarmManager$AlarmClockInfo;Landroid/app/PendingIntent;)V", "GetSetAlarmClock_Landroid_app_AlarmManager_AlarmClockInfo_Landroid_app_PendingIntent_Handler")>]
[<Android.Runtime.RequiresPermission("android.permission.SCHEDULE_EXACT_ALARM")>]
abstract member SetAlarmClock : Android.App.AlarmManager.AlarmClockInfo * Android.App.PendingIntent -> unit
override this.SetAlarmClock : Android.App.AlarmManager.AlarmClockInfo * Android.App.PendingIntent -> unit

Parameter

info
AlarmManager.AlarmClockInfo

AlarmManager.AlarmClockInfo: Dieser Wert darf nicht null sein.

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 einen Wecker darstellt, der verwendet wird, um den Benutzer zu benachrichtigen, wenn er abläuft. Die Erwartung besteht darin, dass die Anwendung, wenn dieser Alarm ausgelöst wird, das Gerät weiter reaktiviert, um dem Benutzer über den Alarm zu informieren - das Einschalten des Bildschirms, die Wiedergabe eines Sounds, Vibrierens usw. Daher verwendet das System in der Regel auch die hier bereitgestellten Informationen, um den Benutzer bei Bedarf über diesen bevorstehenden Alarm zu informieren. Aufgrund der Art dieser Art von Alarm, ähnlich wie setExactAndAllowWhileIdle(int, long, PendingIntent), können diese Alarme auch dann ausgelöst werden, wenn sich das System in einem Leerlaufmodus (a.k.k.a. Doze) befindet. Das System kann auch einige Vorbereitungen ausführen, wenn es sieht, dass ein solcher Alarm auftritt, um die Menge der Hintergrundarbeit zu reduzieren, die auftreten könnte, wenn das Gerät vollständig aufwacht - dies ist, um Situationen wie eine große Anzahl von Geräten zu vermeiden, die gleichzeitig am Morgen eingestellt sind, alle werden zu diesem Zeitpunkt aufwachen und plötzlich das Netzwerk mit ausstehender Hintergrundarbeit überschwemmen. Daher können diese Arten von Alarmen bei der Batterienutzung extrem teuer sein und sollten nur für ihren vorgesehenen Zweck verwendet werden.

Diese Methode ist wie setExact(int,long,PendingIntent), impliziert aber RTC_WAKEUP. Hinweis: Beginnend mit Build.VERSION_CODES. S, Apps für SDK-Ebene 31 oder höher müssen die SCHEDULE_EXACT_ALARM Berechtigung für die Verwendung dieser API anfordern. Der Benutzer und das System können diese Berechtigung über den Speziellen App-Zugriffsbildschirm in den Einstellungen widerrufen. Hinweis: Genaue Alarme sollten nur für Benutzerfeatures verwendet werden. Weitere Informationen finden Sie unter "Genaue Alarmberechtigung". Alarme, die über diese API geplant werden, können auch dann einen Vordergrunddienst starten, wenn sich die App im Hintergrund befindet. Erfordert Manifest.permission.SCHEDULE_EXACT_ALARM

Siehe auch:

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

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: