Tutorial: Senden von Benachrichtigungen an Apps für die universelle Windows-Plattform mit Azure Notification HubsTutorial: Send notifications to Universal Windows Platform apps by using Azure Notification Hubs

In diesem Tutorial erstellen Sie einen Notification Hub, um Pushbenachrichtigungen an eine App für die universelle Windows-Plattform (UWP) zu senden.In this tutorial, you create a notification hub to send push notifications to a Universal Windows Platform (UWP) app. Sie erstellen eine leere Windows Store-App, die Pushbenachrichtigungen unter Verwendung des Windows-Pushbenachrichtigungsdiensts (WNS) empfängt.You create a blank Windows Store app that receives push notifications by using the Windows Push Notification Service (WNS). Dann können Sie über Ihren Notification Hub Pushbenachrichtigungen an alle Geräte senden, die Ihre App ausführen.Then, you can use your notification hub to broadcast push notifications to all devices that are running your app.

Hinweis

Den vollständigen Code für dieses Tutorial finden Sie auf GitHub.You can find the completed code for this tutorial on GitHub.

In diesem Tutorial führen Sie die folgenden Schritte aus:In this tutorial, you take the following steps:

  • Erstellen einer App im Windows StoreCreate an app in Windows Store
  • Erstellen eines Notification HubsCreate a notificaiton hub
  • Erstellen einer Beispiel-Windows-AppCreate a sample Windows app
  • Senden von TestbenachrichtigungenSend test notifications

VoraussetzungenPrerequisites

Dieses Tutorial muss für alle anderen Notification Hubs-Tutorials für UWP-Apps abgeschlossen werden.Completing this tutorial is a prerequisite for all other Notification Hubs tutorials for UWP apps.

Erstellen einer App im Windows StoreCreate an app in Windows Store

Ordnen Sie Ihre App dem Windows Store zu, um Pushbenachrichtigungen an UWP-Apps senden zu können.To send push notifications to UWP apps, associate your app to the Windows Store. Konfigurieren Sie anschließend Ihren Notification Hub für die Integration in WNS.Then, configure your notification hub to integrate with WNS.

  1. Navigieren Sie zum Windows Dev Center, melden Sie sich dort mit Ihrem Microsoft-Konto an, und wählen Sie dann Neue App erstellen aus.Navigate to the Windows Dev Center, sign in with your Microsoft account, and then select Create a new app.

    „Neue App“-Schaltfläche

  2. Geben Sie einen Namen für Ihre App ein, und wählen Sie anschließend Produktname reservieren aus.Type a name for your app, and then select Reserve product name. Dadurch wird eine neue Windows Store-Registrierung für Ihre App erstellt.Doing so creates a new Windows Store registration for your app.

    Store-App-Name

  3. Erweitern Sie App-Verwaltung, wählen Sie WNS/MPNS, dann WNS/MPNS und Live Services-Website aus.Expand App Management, select WNS/MPNS, select WNS/MPNS, and then select Live Services site. Anmelden bei Ihrem Azure-KontoSign in to your Microsoft account. Das App-Registrierungsportal wird auf einer neuen Registerkarte geöffnet. Alternativ können Sie direkt zum App-Registrierungsportal navigieren und Ihren Anwendungsnamen auswählen, um zu dieser Seite zu gelangen.The Application Registration Portal opens in a new tab. Alternatively, you can navigate directly to the Application Registration Portal, select your application name to get to this page.

    WNS/MPNS-Seite

  4. Notieren Sie sich das Kennwort unter Anwendungsgeheimnis sowie die Paketsicherheits-ID (SID).Note the Application Secret password and the Package security identifier (SID).

    Warnung

    Der geheime Schlüssel der Anwendung und die Paket-SID sind wichtige Sicherheitsanmeldeinformationen.The application secret and package SID are important security credentials. Geben Sie diese Werte nicht weiter, und verteilen Sie sie nicht mit Ihrer Anwendung.Do not share these values with anyone or distribute them with your app.

Erstellen eines Notification HubsCreate a notification hub

  1. Melden Sie sich beim Azure-Portal an.Sign in to the Azure portal.

  2. Klicken Sie auf Ressourcen erstellen > Mobil > Notification Hub.Select Create a resource > Mobile > Notification Hub.

    Azure-Portal – Erstellen von Notification Hubs

  3. Geben Sie im Feld Notification Hub einen eindeutigen Namen ein.In the Notification Hub box, type a unique name. Wählen Sie Region, Abonnement und Ressourcengruppe (sofern bereits vorhanden).Select your Region, Subscription, and Resource Group (if you have one already).

    Wenn Sie noch nicht über einen Service Bus-Namespace verfügen, können Sie den Standardnamen verwenden, der basierend auf dem Hub-Namen erstellt wird (sofern der Namespace-Name verfügbar ist).If you don't already have a service bus namespace, you can use the default name, which is created based on the hub name (if the namespace name is available).

    Gehen Sie wie folgt vor, wenn Sie bereits über einen Service Bus-Namespace verfügen, in dem Sie den Hub erstellen möchten:If you already have a service bus namespace that you want to create the hub in, follow these steps

    a.a. Wählen Sie im Bereich Namespace den Link Vorhandene auswählen.In the Namespace area, select the Select Existing link.

    b.b. Klicken Sie auf Erstellen.Select Create.

    Azure-Portal – Festlegen von Eigenschaften für den Notification Hub

  4. Wählen Sie Benachrichtigungen (Glockensymbol) und Zu Ressource wechseln aus.Select Notifications (Bell icon), and select Go to resource.

    Azure-Portal – Benachrichtigungen -> Zu Ressource wechseln

  5. Wählen Sie in der Liste die Option Zugriffsrichtlinien aus.Select Access Policies from the list. Notieren Sie sich die beiden Verbindungszeichenfolgen, die für Sie verfügbar sind.Note the two connection strings that are available to you. Sie werden später für die Behandlung von Pushbenachrichtigungen benötigt.You need them to handle push notifications later.

    Wichtig

    Verwenden Sie NICHT „DefaultFullSharedAccessSignature“ in Ihrer Anwendung.Do NOT use the DefaultFullSharedAccessSignature in your application. Diese ist nur für die Verwendung in Ihrem Back-End vorgesehen.This is meant to be used in your back-end only.

    Azure-Portal – Verbindungszeichenfolgen für den Notification Hub

Konfigurieren der WNS-Einstellungen für den HubConfigure WNS settings for the hub

  1. Wählen Sie Windows (WNS) in der Kategorie BENACHRICHTIGUNGSEINSTELLUNGEN aus.Select Windows (WNS) in the NOTIFICATION SETTINGS category.
  2. Geben Sie die Werte für Paket-SID und Sicherheitsschlüssel ein, die Sie im vorherigen Abschnitt notiert haben.Enter values for Package SID and Security Key you noted from the previous section.
  3. Wählen Sie auf der Symbolleiste Speichern aus.Select Save on the toolbar.

    Die Felder für Paket-SID und Sicherheitsschlüssel

Ihr Notification Hub ist jetzt für die Zusammenarbeit mit WNS konfiguriert.Your notification hub is now configured to work with WNS. Sie verfügen über die Verbindungszeichenfolgen, die Sie zum Registrieren Ihrer App und zum Senden von Benachrichtigungen benötigen.You have the connection strings to register your app and send notifications.

Erstellen einer Beispiel-Windows-AppCreate a sample Windows app

  1. Wählen Sie in Visual Studio Datei, Neu und dann Projekt aus.In Visual Studio, select File, point to New, and select Project.
  2. Führen Sie im Dialogfeld Neues Projekt die folgenden Schritte aus:In the New Project dialog box, do the following steps:

    1. Erweitern Sie Visual C#.Expand Visual C#.
    2. Wählen Sie Windows Universal aus.Select Windows Universal.
    3. Wählen Sie Leere App (universelles Windows) aus.Select Blank App (Universal Windows).
    4. Geben Sie einen Namen für das Projekt ein.Enter a name for the project.
    5. Klicken Sie auf OK.Select OK.

      Dialogfeld "Neues Projekt"

  3. Übernehmen Sie die Standardwerte für die Zielversion und die Mindestversion der Plattform, und wählen Sie OK aus.Accept the defaults for the target and minimum platform versions, and select OK.
  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Windows Store-App-Projekt, und wählen Sie Store und anschließend App mit Store verknüpfen aus.In Solution Explorer, right-click the Windows Store app project, select Store, and then select Associate App with the Store. Daraufhin wird der Assistent App mit Windows Store verknüpfen angezeigt.The Associate Your App with the Windows Store wizard appears.
  5. Melden Sie sich im Assistenten mit Ihrem Microsoft-Konto an.In the wizard, sign in with your Microsoft account.
  6. Wählen Sie die App aus, die Sie in Schritt 2 registriert haben. Wählen Sie dann Weiter und anschließend Zuordnen aus.Select the app that you registered in step 2, select Next, and then select Associate. Dadurch werden die erforderlichen Windows Store-Registrierungsinformationen zum Anwendungsmanifest hinzugefügt.Doing so adds the required Windows Store registration information to the application manifest.
  7. Klicken Sie in Visual Studio mit der rechten Maustaste auf die Projektmappe, und wählen Sie NuGet-Pakete verwalten aus.In Visual Studio, right-click the solution, and then select Manage NuGet Packages. Das Fenster NuGet-Pakete verwalten wird geöffnet.The Manage NuGet Packages window opens.
  8. Geben Sie in das Suchfeld die Zeichenfolge WindowsAzure.Messaging.Managed ein, wählen Sie Installieren aus, und akzeptieren Sie die Nutzungsbedingungen.In the search box, enter WindowsAzure.Messaging.Managed, select Install, and accept the terms of use.

    Das Fenster „NuGet-Pakete verwalten“

    Mit dieser Aktion wird unter Verwendung des Microsoft.Azure.NotificationHubs-NuGet-Pakets die Azure Notification Hubs-Bibliothek für Windows heruntergeladen, installiert und ein Verweis hinzugefügt.This action downloads, installs, and adds a reference to the Azure Notification Hubs library for Windows by using the Microsoft.Azure.NotificationHubs NuGet package.

  9. Öffnen Sie die Projektdatei „App.xaml.cs“, und fügen Sie die folgenden using-Anweisungen hinzu:Open the App.xaml.cs project file, and add the following using statements:

     using Windows.Networking.PushNotifications;
     using Microsoft.WindowsAzure.Messaging;
     using Windows.UI.Popups;
    
  10. Fügen Sie außerdem in der Datei „App.xaml.cs“ der Klasse App die folgende InitNotificationsAsync-Methodendefinition hinzu:In App.xaml.cs, also add to the App class the following InitNotificationsAsync method definition:

     private async void InitNotificationsAsync()
     {
         var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
    
         var hub = new NotificationHub("<your hub name>", "<Your DefaultListenSharedAccessSignature connection string>");
         var result = await hub.RegisterNativeAsync(channel.Uri);
    
         // Displays the registration ID so you know it was successful
         if (result.RegistrationId != null)
         {
             var dialog = new MessageDialog("Registration successful: " + result.RegistrationId);
             dialog.Commands.Add(new UICommand("OK"));
             await dialog.ShowAsync();
         }
    
     }
    

    Dieser Code ruft den Kanal-URI für die App von WNS ab und registriert dann diesen Kanal-URI bei Ihrem Benachrichtigungshub.This code retrieves the channel URI for the app from WNS, and then registers that channel URI with your notification hub.

    Hinweis

    • Ersetzen Sie den Platzhalter hub name durch den Namen des Notification Hubs aus dem Azure-Portal.Replace the hub name placeholder with the name of the notification hub that appears in the Azure portal.
    • Ersetzen Sie außerdem den Verbindungszeichenfolgen-Platzhalter durch die Verbindungszeichenfolge DefaultListenSharedAccessSignature, die Sie in einem der vorherigen Abschnitte über die Seite Zugriffsrichtlinien Ihres Notification Hubs ermittelt haben.Also replace the connection string placeholder with the DefaultListenSharedAccessSignature connection string that you obtained from the Access Polices page of your notification hub in a previous section.
  11. Fügen Sie in der Datei „App.xaml.cs“ am Anfang des OnLaunched-Ereignishandlers den folgenden Aufruf zu der neuen InitNotificationsAsync-Methode hinzu:At the top of the OnLaunched event handler in App.xaml.cs, add the following call to the new InitNotificationsAsync method:

     InitNotificationsAsync();
    

    Dadurch wird gewährleistet, dass der Kanal-URI bei jedem Start der Anwendung beim Notification Hub registriert wird.This action guarantees that the channel URI is registered in your notification hub each time the application is launched.

  12. Drücken Sie F5 , um die App auszuführen.To run the app, select the F5 key. Ein Dialogfeld mit dem Registrierungsschlüssel wird angezeigt.A dialog box that contains the registration key is displayed. Um das Dialogfeld zu schließen, klicken Sie auf OK.To close the dialog, select OK.

    Erfolgreiche Registrierung

Ihre App kann jetzt Popupbenachrichtigungen empfangen.Your app is now ready to receive toast notifications.

Senden von TestbenachrichtigungenSend test notifications

Der Benachrichtigungsempfang in der App kann schnell durch Senden von Benachrichtigungen im Azure-Portal getestet werden.You can quickly test receiving notifications in your app by sending notifications in the Azure portal.

  1. Wechseln Sie im Azure-Portal zur Registerkarte Übersicht, und wählen Sie auf der Symbolleiste Testsendevorgang aus.In the Azure portal, switch to the Overview tab, and select Test Send on the toolbar.

    Schaltfläche „Testsendevorgang“

  2. Führen Sie im Fenster Testsendevorgang die folgenden Aktionen aus:In the Test Send window, do the following actions:

    1. Wählen Sie für Plattformen die Option Windows aus.For Platforms, select Windows.
    2. Wählen Sie für Benachrichtigungstyp die Option Popup aus.For Notification Type, select Toast.
    3. Wählen Sie Senden aus.Select Send.

      Der Bereich „Testsendevorgang“

  3. Das Ergebnis des Sendevorgangs wird am unteren Rand des Fensters in der Liste Ergebnis angezeigt.See the result of the Send operation in the Result list at the bottom of the window. Sie sehen auch eine Warnmeldung.You also see an alert message.

    Ergebnis des Sendevorgangs

  4. Sie sehen die Benachrichtigungsmeldung: Testmeldung auf Ihrem Desktop.You see the notification message: Test message on your desktop.

    Benachrichtigungsmeldung

Nächste SchritteNext steps

In diesem Tutorial haben Sie über das Portal oder über eine Konsolen-App Übertragungsbenachrichtigungen an alle Ihre Windows-Geräte gesendet.In this tutorial, you sent broadcast notifications to all your Windows devices by using the portal or a console app. Um zu erfahren, wie Sie Pushbenachrichtigungen an bestimmte Geräte senden, fahren Sie mit dem folgenden Tutorial fort:To learn how to push notifications to specific devices, advance to the following tutorial: