Language: HTML | XAML

So wird’s gemacht: Verwenden des Wartungstriggers (HTML)

Applies to Windows and Windows Phone

Hier erfahren Sie, wie Sie die MaintenanceTrigger-Klasse zum Ausführen von einfachem Code im Hintergrund verwenden, während das Gerät angeschlossen ist.

Wissenswertes

Technologien

Voraussetzungen

  • In diesem Beispiel wird davon ausgegangen, dass Sie über einfachen Code verfügen, den Sie im Hintergrund ausführen können, um Ihre App zu optimieren, wenn das Gerät angeschlossen ist. Das Thema behandelt schwerpunktmäßig die MaintenanceTrigger-Klasse, die insofern der SystemTrigger-Klasse ähnelt, als dass die App sich nicht auf dem Sperrbildschirm befinden muss, um eine MaintenanceTrigger-Hintergrundaufgabe zu registrieren. Weitere Infos zum Schreiben einer Hintergrundaufgabenklasse finden Sie unter Schnellstart: Erstellen und Registrieren einer Hintergrundaufgabe.

Anweisungen

Schritt 1: Erstellen eines Wartungstriggerobjekts

Erstellen Sie ein neues MaintenanceTrigger-Objekt. Der zweite Parameter (OneShot) gibt an, ob die Wartungsaufgabe einmalig oder regelmäßig ausgeführt wird. Wenn OneShot auf "true" festgelegt wird, gibt der erste Parameter (FreshnessTime) die Anzahl der Minuten an, die gewartet werden soll, bevor die Hintergrundaufgabe geplant wird. Wenn OneShot auf "false" festgelegt wird, gibt FreshnessTime die Häufigkeit an, mit der die Hintergrundaufgabe ausgeführt wird.

Hinweis  Wenn FreshnessTime auf weniger als 15 Minuten festgelegt ist, wird bei einem Registrierungsversuch der Hintergrundaufgabe eine Ausnahme ausgelöst.

Dieser Beispielcode erstellt einen Auslöser, der einmal pro Stunde ausgeführt wird:


var waitIntervalMinutes = 60;

var taskTrigger = new Windows.ApplicationModel.Background.MaintenanceTrigger(waitIntervalMinutes, false);

Schritt 2: (Optional) Hinzufügen einer Bedingung

Fügen Sie bei Bedarf eine Hintergrundaufgabenbedingung hinzu, um zu steuern, wann die Aufgabe ausgeführt wird. Eine Bedingung sorgt dafür, dass die Hintergrundaufgabe erst ausgeführt wird, wenn die Bedingung erfüllt ist. Weitere Informationen finden Sie unter So wird's gemacht: Festlegen von Bedingungen für die Ausführung einer Hintergrundaufgabe.

In diesem Beispiel wird die Bedingung auf UserPresent festgelegt, sodass die Wartung ausgeführt wird, wenn der Benutzer aktiv ist (oder wenn der Benutzer aktiv wird). Eine Liste der möglichen Hintergrundaufgabenbedingungen finden Sie unter SystemConditionType.

Der folgende Code fügt dem Hintergrundaufgaben-Generator eine Bedingung hinzu:


var exampleCondition = new Windows.ApplicationModel.Background.SystemCondition(Windows.ApplicationModel.Background.SystemConditionType.UserAway);

Schritt 3: Registrieren der Hintergrundaufgabe

Registrieren Sie die Hintergrundaufgabe, indem Sie die Funktion zum Registrieren der Hintergrundaufgabe aufrufen. Weitere Informationen zum Registrieren von Hintergrundaufgaben finden Sie unter So wird's gemacht: Registrieren einer Hintergrundaufgabe.

Der folgende Code registriert die Hintergrundaufgabe:


var entryPoint = “js\\ExampleBackgroundTask.js”;
var taskName = “Maintenance background task example”;

var task = RegisterBackgroundTask(entryPoint, taskName, taskTrigger, exampleCondition);

Hinweis  

Ab Windows 8.1 werden Parameter für die Registrierung von Hintergrundaufgaben zum Zeitpunkt der Registrierung überprüft. Bei ungültigen Registrierungsparametern wird ein Fehler zurückgegeben. Ihre App muss Szenarios, in denen die Registrierung von Hintergrundaufgaben fehlschlägt, problemlos verarbeiten können. Verwenden Sie beispielsweise eine Bedingungsanweisung, um die App auf Registrierungsfehler zu prüfen, und führen Sie die fehlgeschlagene Registrierung mit anderen Parameterwerten erneut durch.

Anmerkungen

Ereignisse von Wartungsauslösern werden nur ausgelöst, wenn das Gerät angeschlossen ist.

Hinweis  Wenn das Gerät vom Netzstrom getrennt wird, werden alle derzeit ausgeführten Hintergrundaufgaben abgebrochen, die durch MaintenanceTrigger gestartet wurden (cancelReason = Abort). Wenn die Hintergrundaufgabe nicht innerhalb von 5 Sekunden abgebrochen wird, nachdem das Ereignis zum Abbrechen der Hintergrundaufgabe empfangen wurde, wird die Hintergrundaufgabe beendet. Weitere Infos finden Sie im Thema So wird's gemacht: Behandeln einer abgebrochenen Hintergrundaufgabe.

Verwandte Themen

Schnellstart: Erstellen und Registrieren einer Hintergrundaufgabe
So wird's gemacht: Registrieren einer Hintergrundaufgabe
So wird's gemacht: Reagieren auf Systemereignisse mit Hintergrundaufgaben
So wird's gemacht: Festlegen von Bedingungen für die Ausführung einer Hintergrundaufgabe
So wird's gemacht: Deklarieren von Hintergrundaufgaben im Anwendungsmanifest
How to debug a background task
Richtlinien und Prüflisten für Hintergrundaufgaben

 

 

Anzeigen:
© 2014 Microsoft