So wird’s gemacht: Schreiben von Hintergrundaufgaben für unformatierte Pushbenachrichtigungen (HTML)

[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation]

In diesem Thema wird gezeigt, wie Sie eine Hintergrundaufgabe schreiben, um in einer Windows-Runtime-App auf dem Sperrbildschirm Hintergrund-Netzwerkbenachrichtigungen zu empfangen, die unformatierte Pushbenachrichtigungen verwenden. Es wird beschrieben, wie Sie für eine Windows-Runtime-App eine Hintergrundaufgabe für das Windows 8.1-Feature für unformatierte Pushbenachrichtigungen schreiben.

Wissenswertes

Technologien

Voraussetzungen

  • Die folgenden Informationen gelten für alle verbundenen oder netzwerkfähigen Windows-Runtime-Apps, die Netzwerkverbindungen mit unformatierten Pushbenachrichtigungen erfordern, um dauerhaft verbunden zu sein. Dieses Thema bezieht sich auf in JavaScript geschriebene Apps unter Windows 8.1, Windows Phone 8.1 und Windows Server 2012.

    Hintergrund-Netzwerkkonnektivität, die unformatierte Pushbenachrichtigungen verwendet, wird von JavaScript-Apps, Apps in C++/XAML und Apps in C#, VB.NET oder verwaltetem C++, die .NET Framework 4.5 nutzen, unterstützt. Weitere Informationen zu Hintergrund-Netzwerkaufgaben, die für JavaScript-Apps gelten, finden Sie unter Unterstützen von App durch Hintergrundaufgaben.

Anweisungen

Schreiben der Hintergrundaufgabe

Damit die App stets erreichbar ist, ist es wichtig, den App-Code anzugeben, der beim Auftreten einer unformatierten Pushbenachrichtigung ausgeführt wird. Nehmen Sie als Beispiel eine E-Mail-App, die eingehende unformatierte Pushbenachrichtigungen verwendet, um zu signalisieren, dass neue E-Mails auf dem Server eingetroffen sind. Diese App muss Code ausführen, um die Daten in der unformatierten Pushbenachrichtigung zu verarbeiten. Diese Daten könnten eine Liste der eingegangenen neuen E-Mails enthalten, um eine Benachrichtigung für den Benutzer auszulösen. Eine App könnte auch das Herstellen einer Verbindung zum E-Mail-Server planen und die neuen E-Mails vom Server herunterladen, sobald die App nicht mehr angehalten ist. Diese Verarbeitung erfolgt innerhalb der Hintergrundaufgabe.

Jede Hintergrundaufgabe wird durch eine Funktion implementiert, die ausgeführt wird, wenn sich die App für eine unformatierte Pushbenachrichtigung registriert hat. Festgelegt wird dies im App-Manifest in Form der konkreten JavaScript-Datei, die eine einzelne Funktion enthält.

Das folgende Beispiel zeigt die Funktion, die ausgeführt wird, wenn die Hintergrundaufgabe durch eine unformatierte Pushbenachrichtigung ausgelöst wird.

(function () {
    // Get the background task details
    var backgroundTask = Windows.UI.WebUI.WebUIBackgroundTaskInstance.current;
    var settings = Windows.Storage.ApplicationData.current.localSettings;
    var taskName = backgroundTask.task.name;

    console.log("Background task \"" + taskName + "\" starting...");

    // Store the content received from the notification so it can be retrieved
    // from the UI.
    var notificationDetails = backgroundTask.triggerDetails;
    settings.values[taskName] = notificationDetails.content;

    console.log("Background \"" + taskName + "\" completed!");

    // Close the instance running the task
    close();
})();

Hinweis  Es ist nicht möglich, in einer Hintergrundaufgabe auf Elemente der App-Benutzeroberfläche (UI) zu verweisen, da die UI-Elemente in der App nicht ausgeführt werden. Wenn der Code in der Hintergrundaufgabe ausgeführt wird, können Sie die Daten aus der unformatierten Pushbenachrichtigung empfangen, analysieren und verarbeiten und dann eine Benachrichtigung für den Benutzer auslösen.

 

Die Lebensdauer einer Hintergrundaufgabe wird durch die Funktion gesteuert, die die Hintergrundaufgabe implementiert. Wenn eine App die Funktion verlässt, wird die App angehalten.

Wird eine App-Hintergrundaufgabe ausgelöst, stellt das Betriebssystem sicher, dass die Daten aus der unformatierten Pushbenachrichtigung durch eine geeignete Synchronisierung an die App übermittelt werden. Andernfalls wird ein Fehler (z. B. Verbindung abgebrochen) zurückgegeben. Ebenso muss die App am Ende der Hintergrundaufgabe sicherstellen, dass alle Benachrichtigungen ausgelöst wurden, bevor die App angehalten wird.

Hintergrundaufgaben sind hauptsächlich für angehaltene Apps vorgesehen. Wenn Hintergrundaufgaben für eine App konfiguriert sind, werden diese jedoch auch dann ausgelöst, wenn die App im Vordergrund ausgeführt wird.

Vorherige Schritte

Weitere Informationen zum Erstellen von Sperrbildschirm-Apps, die Hintergrund-Netzwerkbenachrichtigungen mit unformatierten Pushbenachrichtigungen empfangen, finden Sie unter So wird's gemacht: Erstellen von Sperrbildschirm-Apps, die unformatierte Hintergrund-Pushbenachrichtigungen verwenden.

Weitere Informationen dazu, wie Sie einen Pushbenachrichtigungskanal registrieren und an den Server senden, wie Sie eine Hintergrundaufgabe registrieren, die von einer unformatierten Pushbenachrichtigung aktiviert wird, und wie Sie eine unformatierte Pushbenachrichtigung an den Kanal senden und die Hintergrundaufgabe aktivieren finden Sie unter So wird's gemacht: Verwenden von WNS zur Übermittlung unformatierter Pushbenachrichtigungen an eine Sperrbildschirm-App.

Weitere Informationen zu Richtlinien und Prüflisten für die Verwendung von unformatierten Pushbenachrichtigungen finden Sie unter

Richtlinien und Prüfliste für unformatierte Benachrichtigungen.

Verwandte Themen

Weitere Ressourcen

Hinzufügen von Unterstützung für Netzwerke

Netzwerkfunktionen im Hintergrund

Richtlinien und Prüfliste für unformatierte Benachrichtigungen

So wird's gemacht: Authentifizieren mit dem Windows-Pushbenachrichtigungsdienst (WNS)

So wird's gemacht: Verwenden von WNS zur Übermittlung unformatierter Pushbenachrichtigungen an eine Sperrbildschirm-App

Übersicht über den Sperrbildschirm

Übersicht über Pushbenachrichtigungen

So wird's gemacht: Erstellen von Sperrbildschirm-Apps, die unformatierte Hintergrund-Pushbenachrichtigungen verwenden

Unterstützen von Apps durch Hintergrundaufgaben

Problembehandlung und Debuggen von Netzwerkverbindungen

Referenz

HttpClient

HttpClientHandler

IXMLHTTPRequest2

System.Net.Http

Windows.ApplicationModel.Background

Windows.Networking.BackgroundTransfer

Windows.Networking.PushNotifications

Windows.Networking.Sockets

Beispiele

Beispiel für eine Hintergrundaufgabe

Beispiel für Sperrbildschirm-Apps

Beispiel für clientseitige Pushbenachrichtigungen und periodische Benachrichtigungen

Beispiel für unformatierte Benachrichtigungen