Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Lernprogramm erstellen Sie einen Benachrichtigungshub zum Senden von Pushbenachrichtigungen an eine UWP-App (Universelle Windows-Plattform). Sie erstellen eine leere Windows Store-App, die Pushbenachrichtigungen mithilfe des Windows-Pushbenachrichtigungsdiensts (Windows Push Notification Service, WNS) empfängt. Anschließend verwenden Sie Ihren Benachrichtigungshub, um Pushbenachrichtigungen auf alle Geräte zu übertragen, auf denen Ihre App ausgeführt wird.
Hinweis
Den vollständigen Code für dieses Lernprogramm finden Sie auf GitHub.
Sie führen die folgenden Schritte aus:
- Erstellen einer App im Windows Store
- Erstellen eines Benachrichtigungshubs
- Erstellen einer Windows-Beispiel-App
- Senden von Testbenachrichtigungen
Voraussetzungen
- Azure-Abonnement. Falls Sie über kein Azure-Abonnement verfügen, können Sie ein kostenloses Azure-Konto erstellen, bevor Sie beginnen.
- Microsoft Visual Studio 2017 oder höher. Das Beispiel in diesem Lernprogramm verwendet Visual Studio 2019.
- UWP-App-Entwicklungstools installiert.
- Ein aktives Windows Store-Konto.
- Vergewissern Sie sich, dass die Einstellung " Benachrichtigungen von Apps und anderen Absendern abrufen" aktiviert ist.
- Starten Sie das Fenster "Einstellungen" auf Ihrem Computer.
- Wählen Sie die Systemkachel aus.
- Wählen Sie im linken Menü Benachrichtigungen und Aktionen aus.
- Vergewissern Sie sich, dass die Einstellung " Benachrichtigungen von Apps und anderen Absendern abrufen " aktiviert ist. Wenn sie nicht aktiviert ist, aktivieren Sie sie.
Das Abschließen dieses Lernprogramms ist eine Voraussetzung für alle anderen Lernprogramme für Benachrichtigungshubs für UWP-Apps.
Erstellen einer App im Windows Store
Hinweis
Der Microsoft-Pushbenachrichtigungsdienst (MPNS) ist veraltet und wird nicht mehr unterstützt.
Um Pushbenachrichtigungen an UWP-Apps zu senden, ordnen Sie Ihre App dem Windows Store zu. Konfigurieren Sie dann Ihren Benachrichtigungshub für die Integration in WNS.
Navigieren Sie zum Windows Dev Center, melden Sie sich mit Ihrem Microsoft-Konto an, und wählen Sie dann " Neue App erstellen" aus.
Geben Sie einen Namen für Ihre App ein, und wählen Sie dann " Produktname reservieren" aus. Dadurch wird eine neue Windows Store-Registrierung für Ihre App erstellt.
Erweitern Sie die Produktverwaltung, und wählen Sie dann "Produktidentität" aus. Notieren Sie sich die Paket-SID-, Package/Identity/Name-, Package/Identity/Publisher- und Package/Properties/PublisherDisplayName-Werte .
Wählen Sie unter "Produktverwaltung" WNS/MPNS und dann das App-Registrierungsportal aus. Melden Sie sich bei Ihrem Microsoft-Konto an. Die Anwendungsregistrierungsseite wird auf einer neuen Registerkarte geöffnet.
Wählen Sie unter "Essentials" die Option "Clientanmeldeinformationen" aus: Hinzufügen eines Zertifikats oder eines geheimen Schlüssels.
Wählen Sie auf der Seite "Zertifikate und Geheimnisse" unter ClientgeheimnisseNeues Clientgeheimnis aus. Nachdem Sie einen geheimen Clientschlüssel (auch als Anwendungsgeheimnis bezeichnet) erstellt haben, notieren Sie ihn, bevor Sie die Seite verlassen.
Warnung
Sie können geheime Clientschlüsselwerte (Anwendungsgeheimnisse) nur unmittelbar nach dem Erstellen anzeigen. Achten Sie darauf, den geheimen Schlüssel zu speichern, bevor Sie die Seite verlassen.
Warnung
Das Anwendungsgeheimnis und die Paket-SID sind wichtige Sicherheitsanmeldeinformationen. Teilen Sie diese Werte nicht mit anderen Personen, oder verteilen Sie sie mit Ihrer App.
Erstellen eines Benachrichtigungshubs
Melden Sie sich beim Azure-Portal an.
Wählen Sie im Menü links Alle Dienste aus.
Geben Sie Notification Hubs in das Textfeld Dienste filtern ein. Wählen Sie das Sternsymbol neben dem Dienstnamen aus, um den Dienst im linken Menü zum Abschnitt FAVORITEN hinzuzufügen. Wählen Sie Notification Hubs aus.
Wählen Sie auf der Seite Notification Hubs in der Symbolleiste die Option Erstellen aus.
Führen Sie auf der Registerkarte Grundlagen der Seite Notification Hub die folgenden Schritte aus:
Wählen Sie unter Abonnement den Namen des Azure-Abonnements aus, das Sie verwenden möchten, und wählen Sie dann eine vorhandene Ressourcengruppe aus, oder erstellen Sie eine neue Ressourcengruppe.
Geben Sie unter Namespacedetails einen eindeutigen Namen für den neuen Namespace ein.
Ein Namespace enthält mindestens einen Notification Hub. Geben Sie daher unter Notification Hub-Details einen Namen für den Hub ein.
Wählen Sie im Dropdown-Listenfeld Standort einen Wert aus. Dieser Wert gibt den Standort an, an dem der Hub erstellt werden soll.
Überprüfen Sie die Option Verfügbarkeitszonen. Wenn Sie eine Region mit Verfügbarkeitszonen ausgewählt haben, ist das Kontrollkästchen standardmäßig aktiviert. Verfügbarkeitszonen sind ein kostenpflichtiges Feature, für das in Ihrem Tarif zusätzliche Gebühren anfallen.
Wählen Sie Ihre Option für die Notfallwiederherstellung aus: Keine, Gekoppelte Wiederherstellungsregion oder Flexible Wiederherstellungsregion. Wenn Sie Gekoppelte Wiederherstellungsregion auswählen, wird die Failoverregion angezeigt. Wenn Sie Flexible Wiederherstellungsregion auswählen, verwenden Sie die Dropdownliste, um aus einer Liste mit Wiederherstellungsregionen auszuwählen.
Wählen Sie "Erstellen" aus.
Wählen Sie nach Abschluss der Bereitstellung die Option Zu Ressourcengruppe wechseln.
Konfigurieren von WNS-Einstellungen für den Hub
Wählen Sie in der Kategorie "BENACHRICHTIGUNGSEINSTELLUNGEN" die Option "Windows (WNS)" aus.
Geben Sie Werte für die Paket-SID (z. B. "ms-app://
<Your Package SID>
") und den Security Key (den Anwendungsschlüssel) ein, den Sie im vorherigen Abschnitt angegeben haben.Klicken Sie auf der Symbolleiste auf " Speichern ".
Ihr Benachrichtigungshub ist jetzt für die Arbeit mit WNS konfiguriert. Sie verfügen über die Verbindungszeichenfolgen, um Ihre App zu registrieren und Benachrichtigungen zu senden.
Erstellen einer Windows-Beispiel-App
Öffnen Sie in Visual Studio das Menü Datei, und wählen Sie die Optionen Neu und Projekt.
Führen Sie im Dialogfeld "Neues Projekt erstellen " die folgenden Schritte aus:
Geben Sie oben im Suchfeld "Windows Universal" ein.
Wählen Sie in den Suchergebnissen Leere App (Universelles Windows) und dann Weiter aus.
Geben Sie im Dialogfeld " Neues Projekt konfigurieren " einen Projektnamen und einen Speicherort für die Projektdateien ein.
Wählen Sie "Erstellen" aus.
Akzeptieren Sie die Standardwerte für die Ziel - und Mindestplattformversionen , und wählen Sie "OK" aus.
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Windows Store-App-Projekt, wählen Sie "Veröffentlichen" und dann " App dem Store zuordnen" aus. Der Assistent zum Zuordnen Ihrer App zum Windows Store wird angezeigt.
Melden Sie sich im Assistenten mit Ihrem Microsoft-Konto an.
Wählen Sie die App aus, die Sie in Schritt 2 registriert haben, wählen Sie "Weiter" und dann "Zuordnen" aus. Dadurch werden dem Anwendungsmanifest die erforderlichen Windows Store-Registrierungsinformationen hinzugefügt.
Klicken Sie in Visual Studio mit der rechten Maustaste auf die Projektmappe, und wählen Sie NuGet-Pakete verwalten aus. Das Fenster "NuGet-Pakete verwalten " wird geöffnet.
Geben Sie im Suchfeld "WindowsAzure.Messaging.Managed" ein, wählen Sie "Installieren" aus, und akzeptieren Sie die Nutzungsbedingungen.
Diese Aktion lädt herunter, installiert und fügt mithilfe des NuGet-Pakets "Microsoft.Azure.NotificationHubs" einen Verweis auf die Azure Notification Hubs-Bibliothek für Windows hinzu.
Öffnen Sie die
App.xaml.cs
Projektdatei, und fügen Sie die folgenden Anweisungen hinzu:using Windows.Networking.PushNotifications; using Microsoft.WindowsAzure.Messaging; using Windows.UI.Popups;
Suchen Sie in der Datei des
App.xaml.cs
Projekts dieApp
Klasse, und fügen Sie die folgendeInitNotificationsAsync
Methodendefinition hinzu. Ersetzen Sie den<your hub name>
Namen des Benachrichtigungshubs, den Sie im Azure-Portal erstellt haben, und ersetzen Sie<Your DefaultListenSharedAccessSignature connection string>
sie durch dieDefaultListenSharedAccessSignature
Verbindungszeichenfolge von der Access-Richtlinienseite Ihres Benachrichtigungshubs: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 diesen Kanal-URI dann bei Ihrem Benachrichtigungshub.
Hinweis
Ersetzen Sie den
hub name
Platzhalter durch den Namen des Benachrichtigungshubs, der im Azure-Portal angezeigt wird. Ersetzen Sie außerdem den Platzhalter für die Verbindungszeichenfolge durch dieDefaultListenSharedAccessSignature
Verbindungszeichenfolge, die Sie auf der Access-Richtlinienseite Ihres Benachrichtigungshubs in einem vorherigen Abschnitt abgerufen haben.Fügen Sie oben im
OnLaunched
-Ereignishandler inApp.xaml.cs
den folgenden Aufruf zur neuenInitNotificationsAsync
-Methode hinzu:InitNotificationsAsync();
Diese Aktion garantiert, dass der Kanal-URI bei jedem Start der Anwendung im Benachrichtigungshub registriert ist.
Klicken Sie mit der rechten Maustaste,
Package.appxmanifest
und wählen Sie "Code anzeigen" (F7) aus. Suchen Sie nach<Identity .../>
, und ersetzen Sie den Wert Name durch Paket/Identität/Name. Ersetzen Sie den Wert Herausgeber durch den Wert Paket/Identität/Herausgeber aus der zuvor erstellten App.Um die App auszuführen, drücken Sie die F5-TASTE der Tastatur. Ein Dialogfeld mit dem Registrierungsschlüssel wird angezeigt. Klicken Sie auf 'OK', um das Dialogfeld zu schließen.
Ihre App kann jetzt Toast-Benachrichtigungen empfangen.
Senden von Testbenachrichtigungen
Sie können den Empfang von Benachrichtigungen in Ihrer App schnell testen, indem Sie Benachrichtigungen im Azure-Portal senden.
Wechseln Sie im Azure-Portal zur Registerkarte "Übersicht", und wählen Sie " Senden testen " auf der Symbolleiste aus.
Führen Sie im Fenster " Senden testen " die folgenden Aktionen aus:
Wählen Sie für PlattformenWindows aus.
Wählen Sie für den BenachrichtigungstypToast aus.
Wählen Sie "Senden" aus.
Sehen Sie sich das Ergebnis des Sendevorgangs in der Ergebnisliste am unteren Rand des Fensters an. Außerdem wird eine Warnmeldung angezeigt.
Die Benachrichtigung wird angezeigt: Testnachricht auf dem Desktop.
Nächste Schritte
Sie haben über das Azure-Portal oder eine Konsolen-App Übertragungsbenachrichtigungen an alle Ihre Windows-Geräte gesendet. Um zu erfahren, wie Sie Pushbenachrichtigungen an bestimmte Geräte senden, fahren Sie mit dem folgenden Tutorial fort: