Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym samouczku utworzysz hub powiadomień w celu wysyłania push powiadomień do aplikacji uniwersalnej platformy Windows (UWP). Tworzysz pustą aplikację Sklepu Windows, która odbiera powiadomienia push przy użyciu usługi powiadomień wypychanych systemu Windows (WNS). Następnie użyjesz centrum powiadomień, aby rozsyłać powiadomienia push we wszystkich urządzeniach z uruchomioną aplikacją.
Uwaga
Pełny kod tego samouczka można znaleźć w witrynie GitHub.
Wykonaj następujące czynności:
- Tworzenie aplikacji w Sklepie Windows
- Tworzenie centrum powiadomień
- Tworzenie przykładowej aplikacji systemu Windows
- Wysyłanie powiadomień testowych
Wymagania wstępne
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.
- Program Microsoft Visual Studio 2017 lub nowszy. W tym samouczku przykład używa programu Visual Studio 2019.
- Zainstalowane narzędzia deweloperskie aplikacji platformy UWP.
- Aktywne konto Sklepu Windows.
- Upewnij się, że opcja Pobierz powiadomienia z aplikacji i innych nadawców jest włączona.
- Uruchom okno Ustawienia na komputerze.
- Wybierz kafelek System .
- Wybierz pozycję Powiadomienia i akcje z menu po lewej stronie.
- Upewnij się, że ustawienie Pobierz powiadomienia z aplikacji i innych nadawców jest włączone. Jeśli nie jest włączona, włącz ją.
Ukończenie tego samouczka jest wymaganiem wstępnym dla wszystkich innych samouczków usługi Notification Hubs dla aplikacji platformy UWP.
Tworzenie aplikacji w Sklepie Windows
Uwaga
Usługa powiadomień wypychanych firmy Microsoft (MPNS) jest przestarzała i nie jest już obsługiwana.
Aby wysyłać powiadomienia push do aplikacji UWP, skojarz aplikację z Microsoft Store. Następnie skonfiguruj centrum powiadomień w celu integracji z usługą WNS.
Przejdź do Centrum deweloperów systemu Windows, zaloguj się przy użyciu konta Microsoft, a następnie wybierz pozycję Utwórz nową aplikację.
Wpisz nazwę aplikacji, a następnie wybierz pozycję Zarezerwuj nazwę produktu. Spowoduje to utworzenie nowej rejestracji w Sklepie Windows dla aplikacji.
Rozwiń Zarządzanie produktami, a następnie wybierz Tożsamość produktu. Zanotuj wartości Package SID, Package/Identity/Name, Package/Identity/Publisher i Package/Properties/PublisherDisplayName .
W obszarze Zarządzanie produktami wybierz pozycję WNS/MPNS, a następnie wybierz pozycję Portal rejestracji aplikacji. Zaloguj się do swojego konta Microsoft. Strona rejestracji aplikacji zostanie otwarta na nowej karcie.
W obszarze Podstawowe elementy wybierz pozycję Poświadczenia klienta: Dodaj certyfikat lub wpis tajny.
Na stronie Certyfikaty i wpisy tajne w obszarze Wpisy tajne klienta wybierz pozycję Nowy klucz tajny klienta. Po utworzeniu tajnego klucza klienta (nazywanego również tajnym kluczem aplikacji), zanotuj go przed opuszczeniem strony.
Ostrzeżenie
Wartości wpisu tajnego klienta (wpisu tajnego aplikacji) można wyświetlać tylko natychmiast po ich utworzeniu. Pamiętaj, aby zapisać wpis tajny przed opuszczeniem strony.
Ostrzeżenie
Wpis tajny aplikacji i identyfikator SID pakietu są ważnymi poświadczeniami zabezpieczeń. Nie udostępniaj tych wartości nikomu ani nie rozpowszechniaj ich w aplikacji.
Tworzenie centrum powiadomień
Zaloguj się do portalu Azure.
Wybierz pozycję Wszystkie usługi w menu po lewej stronie.
W polu tekstowym Filtruj usługi wpisz Notification Hubs. Wybierz ikonę gwiazdki obok nazwy usługi, aby dodać usługę do sekcji ULUBIONE w menu po lewej stronie. Wybierz pozycję Notification Hubs.
Na stronie Notification Hubs wybierz pozycję Utwórz na pasku narzędzi.
Na karcie Podstawowe na stronie Centrum powiadomień wykonaj następujące czynności:
W obszarze Subskrypcja wybierz nazwę subskrypcji platformy Azure, której chcesz użyć, a następnie wybierz istniejącą grupę zasobów lub utwórz nową.
Wprowadź unikatową nazwę nowej przestrzeni nazw w obszarze Szczegóły przestrzeni nazw.
Przestrzeń nazw zawiera jedno lub więcej centrów powiadomień, więc wpisz nazwę centrum w szczegółach centrum powiadomień.
Wybierz wartość z listy rozwijanej Lokalizacja . Ta wartość określa lokalizację, w której chcesz utworzyć centrum.
Przejrzyj opcję Strefy dostępności. Jeśli wybrano region ze strefami dostępności, pole wyboru jest zaznaczone domyślnie. Strefy dostępności są funkcją płatną, dlatego do twojego planu dodawana jest dodatkowa opłata.
Wybierz opcję odzyskiwania po awarii:Brak, Sparowany region odzyskiwania, lub Elastyczny region odzyskiwania. Jeśli wybierzesz sparowany region odzyskiwania, zostanie wyświetlony region awaryjny. Jeśli wybierzesz pozycję Elastyczny region odzyskiwania, użyj listy rozwijanej, aby wybrać z listy regionów odzyskiwania.
Wybierz Utwórz.
Po zakończeniu wdrażania wybierz pozycję Przejdź do zasobu.
Konfigurowanie ustawień usługi WNS dla centrum
W kategorii USTAWIENIA POWIADOMIEŃ wybierz pozycję Windows (WNS).
Wprowadź wartości dla identyfikatora SID pakietu (na przykład "ms-app://
<Your Package SID>") oraz klucza zabezpieczeń (czyli tajny aplikacji), które zanotowałeś w poprzedniej sekcji.Kliknij przycisk Zapisz na pasku narzędzi.
Twoje centrum powiadomień jest teraz skonfigurowane do pracy z usługą WNS. Masz parametry połączenia do zarejestrowania aplikacji i wysyłania powiadomień.
Tworzenie przykładowej aplikacji systemu Windows
W programie Visual Studio otwórz menu Plik, wybierz pozycję Nowy, a następnie wybierz pozycję Projekt.
W oknie dialogowym Tworzenie nowego projektu wykonaj następujące kroki:
W polu wyszukiwania u góry wpisz Windows Universal.
W wynikach wyszukiwania wybierz pozycję Pusta aplikacja (uniwersalny system Windows), a następnie wybierz pozycję Dalej.
W oknie dialogowym Konfigurowanie nowego projektu wprowadź nazwę projektu i lokalizację plików projektu.
Wybierz Utwórz.
Zaakceptuj wartości domyślne dla wersji docelowej i minimalnej platformy, a następnie wybierz przycisk OK.
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt aplikacji ze Sklepu Windows, wybierz pozycję Publikuj, a następnie wybierz pozycję Skojarz aplikację ze Sklepem. Zostanie wyświetlony kreator Kojarzenie aplikacji ze Sklepem Windows .
W kreatorze zaloguj się przy użyciu konta Microsoft.
Wybierz aplikację zarejestrowaną w kroku 2, wybierz pozycję Dalej, a następnie wybierz pozycję Skojarz. Spowoduje to dodanie wymaganych informacji o rejestracji w Sklepie Windows do manifestu aplikacji.
W programie Visual Studio kliknij rozwiązanie prawym przyciskiem myszy, a następnie wybierz pozycję Zarządzaj pakietami NuGet. Zostanie otwarte okno Zarządzanie pakietami NuGet .
W polu wyszukiwania wprowadź ciąg WindowsAzure.Messaging.Managed, wybierz pozycję Zainstaluj i zaakceptuj warunki użytkowania.
Ta akcja powoduje pobranie, zainstalowanie i dodanie odwołania do biblioteki usługi Azure Notification Hubs dla systemu Windows przy użyciu pakietu NuGet Microsoft.Azure.NotificationHubs.
App.xaml.csOtwórz plik projektu i dodaj następujące instrukcje:using Windows.Networking.PushNotifications; using Microsoft.WindowsAzure.Messaging; using Windows.UI.Popups;W pliku projektu
App.xaml.csznajdź klasęAppi dodaj następującąInitNotificationsAsyncdefinicję metody. Zastąp<your hub name>nazwą centrum powiadomień, które utworzyłeś w portalu Azure, oraz zastąp<Your DefaultListenSharedAccessSignature connection string>ciągiem połączeniaDefaultListenSharedAccessSignatureze strony Zasady dostępu centrum powiadomień: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(); } }Ten kod pobiera identyfikator URI kanału dla aplikacji z usługi WNS, a następnie rejestruje ten identyfikator URI kanału w centrum powiadomień.
Uwaga
hub nameZastąp symbol zastępczy nazwą centrum powiadomień wyświetlaną w witrynie Azure Portal. Zastąp również symbol zastępczy dla parametrów połączenia łańcuchem połączeniaDefaultListenSharedAccessSignatureuzyskanym ze strony Zasady dostępu centrum powiadomień w poprzedniej sekcji.W górnej części
OnLaunchedprocedury obsługi zdarzeń w plikuApp.xaml.csdodaj następujące wywołanie do nowejInitNotificationsAsyncmetody:InitNotificationsAsync();Ta akcja gwarantuje, że identyfikator URI kanału jest rejestrowany w centrum powiadomień za każdym razem, gdy aplikacja zostanie uruchomiona.
Kliknij prawym przyciskiem myszy
Package.appxmanifesti wybierz polecenie Wyświetl kod (F7). Znajdź<Identity .../>i zastąp wartość Name wartością Package/Identity/Name i zastąp jej wartość Publisher wartością Package/Identity/Publisher z utworzonej wcześniej aplikacji.Aby uruchomić aplikację, naciśnij F5 klawiatury. Zostanie wyświetlone okno dialogowe zawierające klucz rejestracji. Aby zamknąć okno dialogowe, kliknij przycisk OK.
Twoja aplikacja jest teraz gotowa do odbierania powiadomień typu toast.
Wysyłanie powiadomień testowych
Możesz szybko przetestować odbieranie powiadomień w aplikacji, wysyłając powiadomienia w witrynie Azure Portal.
W witrynie Azure Portal przejdź do karty Przegląd i wybierz pozycję Wyślij test na pasku narzędzi.
W oknie Wysyłanie testowe wykonaj następujące czynności:
W obszarze Platformy wybierz pozycję Windows.
W polu Typ powiadomienia wybierz pozycję Toast.
Wybierz Wyślij.
Zobacz wynik operacji Wyślij na liście Wynik w dolnej części okna. Zostanie również wyświetlony komunikat o alercie.
Zostanie wyświetlony komunikat z powiadomieniem: Komunikat testowy na pulpicie.
Następne kroki
Powiadomienia o emisji zostały wysłane do wszystkich urządzeń z systemem Windows przy użyciu witryny Azure Portal lub aplikacji konsolowej. Aby dowiedzieć się, jak wysyłać powiadomienia push do konkretnych urządzeń, przejdź do następującego samouczka: