Samouczek: konfigurowanie aplikacji systemu iOS do pracy z usługą Azure Notification Hubs

W tym samouczku pokazano, jak skonfigurować usługę Azure Notification Hubs i skonfigurować poświadczenia w celu wypychania powiadomień do urządzenia z systemem iOS za pośrednictwem usługi Apple Push Notification Service (APNS).

Uruchomienie tego samouczka jest wymaganiem wstępnym dla kolejnych samouczków dotyczących języka Objective C i Swift dla systemu iOS i obejmuje następujące kroki:

  • Wygeneruj plik żądania podpisania certyfikatu.
  • Zażądaj aplikacji pod kątem powiadomień wypychanych.
  • Utwórz profil aprowizacji dla aplikacji.
  • Tworzenie centrum powiadomień.
  • Skonfiguruj centrum powiadomień przy użyciu informacji usługi APNS.

Wymagania wstępne

Do wykonania kroków tego samouczka potrzebne jest aktywne konto platformy Azure. Jeśli go nie masz, możesz utworzyć bezpłatne konto próbne w zaledwie kilka minut. Aby uzyskać szczegółowe informacje, zobacz Bezpłatna wersja próbna platformy Azure.

Potrzebne będą również następujące elementy:

  • Aktywne konto dla deweloperów firmy Apple.
  • Komputer Mac z uruchomionym programem Xcode wraz z prawidłowym certyfikatem dewelopera zainstalowanym w pęku kluczy.
  • System i Telefon lub iPad z systemem iOS w wersji 10 lub nowszej.
  • Urządzenie fizyczne zarejestrowane w witrynie Apple Portal i skojarzone z certyfikatem.

Jeśli nie znasz usługi, zapoznaj się z omówieniem usługi Azure Notification Hubs.

Uwaga

Centrum powiadomień zostanie skonfigurowane tak, aby używało tylko trybu uwierzytelniania piaskownicy. Nie należy używać tego trybu uwierzytelniania dla obciążeń produkcyjnych.

Generowanie pliku żądania podpisania certyfikatu

Usługa Apple Push Notification Service (APNS) używa certyfikatów do uwierzytelniania powiadomień wypychanych. Wykonaj instrukcje, aby utworzyć niezbędny certyfikat powiadomień wypychanych umożliwiający ich wysyłanie i odbieranie. Więcej informacji dotyczących tych pojęć można znaleźć w oficjalnej dokumentacji usługi Apple Push Notification Service.

Wygeneruj plik żądania podpisania certyfikatu (CSR), którego firma Apple używa do generowania podpisanego certyfikatu wypychania:

  1. Na komputerze Mac uruchom narzędzie Keychain Access. Można go otworzyć z folderu Utilities lub innego folderu na launchpad.

  2. Wybierz pozycję Dostęp pęku kluczy, rozwiń węzeł Asystent certyfikatu, a następnie wybierz pozycję Zażądaj certyfikatu z urzędu certyfikacji.

    Screenshot that highlights the Request a Certificate from a Certificate Authority menu option.

    Uwaga

    Domyślnie dostęp do pęku kluczy wybiera pierwszy element na liście. Może to być problem, jeśli jesteś w kategorii Certyfikaty , a urząd certyfikacji Apple Worldwide Developer Relations nie jest pierwszym elementem na liście. Przed wygenerowaniem żądania CSR (żądanie podpisania certyfikatu) upewnij się, że masz element inny niż klucz lub klucz Urzędu certyfikacji Relacji deweloperów firmy Apple.

  3. Wybierz swój adres e-mail użytkownika, wprowadź wartość nazwy pospolitej, upewnij się, że określono wartość Zapisano na dysku, a następnie wybierz pozycję Kontynuuj. Pozostaw pusty adres e-mail urzędu certyfikacji, ponieważ nie jest wymagany.

    Required certificate information

  4. Wprowadź nazwę pliku CSR w obszarze Zapisz jako, wybierz lokalizację w obszarze Gdzie, a następnie wybierz pozycję Zapisz.

    Choose file name

    Ta akcja zapisuje plik CSR w wybranej lokalizacji. Domyślna lokalizacja to Desktop. Zapamiętaj wybraną lokalizację pliku.

Następnie zarejestruj aplikację za pomocą firmy Apple, włącz powiadomienia wypychane i przekaż wyeksportowany plik CSR, aby utworzyć certyfikat wypychania.

Rejestrowanie aplikacji dla usługi powiadomień wypychanych

Aby wysyłać powiadomienia wypychane do aplikacji systemu iOS, zarejestruj aplikację w usłudze Apple, a także zarejestruj się w celu otrzymywania powiadomień wypychanych.

  1. Jeśli aplikacja nie została jeszcze zarejestrowana, przejdź do portalu aprowizacji systemu iOS w Centrum deweloperów firmy Apple. Zaloguj się do portalu przy użyciu identyfikatora Apple ID i wybierz pozycję Identyfikatory. Następnie wybierz, + aby zarejestrować nową aplikację.

    App IDs page

  2. Na ekranie Rejestrowanie nowego identyfikatora wybierz przycisk radiowy Identyfikatory aplikacji. Następnie wybierz pozycję Kontynuuj.

    Register new ID page

  3. Zaktualizuj następujące trzy wartości dla nowej aplikacji, a następnie wybierz pozycję Kontynuuj:

    • Opis: wpisz opisową nazwę aplikacji.

    • Identyfikator pakietu: wprowadź identyfikator pakietu formularza Identyfikator organizacji.Nazwa produktu, jak wspomniano w przewodniku dystrybucji aplikacji. Wartości Identyfikator organizacji i Nazwa produktu muszą być zgodne z identyfikatorem organizacji i nazwą produktu używaną podczas tworzenia projektu Xcode. Na poniższym zrzucie ekranu wartość NotificationHubs jest używana jako identyfikator organizacji, a wartość GetStarted jest używana jako nazwa produktu. Upewnij się, że wartość Identyfikator pakietu jest zgodna z wartością w projekcie Xcode, aby program Xcode używał poprawnego profilu publikowania.

      Register app ID

    • Powiadomienia wypychane: sprawdź opcję Powiadomienia wypychane w sekcji Możliwości .

      Register new app ID

      Ta akcja generuje identyfikator aplikacji i żąda potwierdzenia informacji. Wybierz pozycję Kontynuuj, a następnie wybierz pozycję Zarejestruj , aby potwierdzić nowy identyfikator aplikacji.

      Confirm new App ID

      Po wybraniu pozycji Zarejestruj nowy identyfikator aplikacji zostanie wyświetlony jako element wiersza na stronie Certyfikaty, Identyfikatory i profile .

  4. Na stronie Certyfikaty, identyfikatory i profile w obszarze Identyfikatory znajdź właśnie utworzony element wiersza Identyfikator aplikacji i wybierz jego wiersz, aby wyświetlić ekran Edytowanie konfiguracji identyfikatora aplikacji.

Tworzenie certyfikatu dla usługi Notification Hubs

Uwaga

W wersji systemu iOS 13 można odbierać tylko powiadomienia dyskretne przy użyciu uwierzytelniania opartego na tokenach. Jeśli używasz uwierzytelniania opartego na certyfikatach dla poświadczeń usługi APNS, musisz przełączyć się na korzystanie z uwierzytelniania opartego na tokenach.

Certyfikat jest wymagany do włączenia centrum powiadomień do pracy z usługą APNS. Można to zrobić na jeden z dwóch sposobów:

  • Utwórz plik p12, który można przekazać bezpośrednio do usługi Notification Hubs.

  • Utwórz plik p8, który może służyć do uwierzytelniania opartego na tokenach (nowsze podejście).

Druga opcja ma wiele korzyści w porównaniu z używaniem certyfikatów, jak opisano w artykule Uwierzytelnianie oparte na tokenach (HTTP/2) dla usługi APNS. Jednak dla obu metod podano kroki.

Opcja 1. Utwórz certyfikat wypychania p12, który można przekazać bezpośrednio do usługi Notification Hubs

  1. Przewiń w dół do zaznaczonej opcji Powiadomienia wypychane, a następnie wybierz pozycję Konfiguruj , aby utworzyć certyfikat.

    App ID

  2. Zostanie wyświetlone okno Certyfikaty SSL usługi Apple Push Notification Service. Wybierz przycisk Utwórz certyfikat w sekcji Tworzenie certyfikatu SSL.

    Create certificate

    Zostanie wyświetlony ekran Tworzenie nowego certyfikatu .

    Uwaga

    Instrukcje w tym samouczku obejmują użycie certyfikatu deweloperskiego. Ten sam proces jest używany podczas rejestrowania certyfikatu produkcyjnego. Podczas wysyłania powiadomień upewnij się, że używasz tego samego typu certyfikatu.

  3. Wybierz pozycję Wybierz plik, przejdź do lokalizacji, w której zapisano plik CSR z pierwszego zadania, a następnie kliknij dwukrotnie nazwę certyfikatu, aby go załadować. Następnie wybierz pozycję Kontynuuj.

  4. Po utworzeniu certyfikatu przez portal wybierz przycisk Pobierz . Zapisz certyfikat i zapamiętaj lokalizację, do której został zapisany.

    Download certificate

    Certyfikat jest pobierany i zapisywany w folderze Pobrane .

    Locate certificate file

    Domyślnie pobrany certyfikat dewelopera ma nazwę aps_development.cer.

  5. Kliknij dwukrotnie pobrany certyfikat powiadomień wypychanych aps_development.cer. Ta akcja powoduje zainstalowanie nowego certyfikatu w narzędziu Keychain, jak przedstawiono na poniższym rysunku:

    Keychain access

    Mimo że nazwa w certyfikacie może być inna, nazwa będzie poprzedzona usługami Apple Development iOS Push Services.

  6. W narzędziu Keychain Access kliknij prawym przyciskiem myszy nowy certyfikat powiadomień wypychanych utworzony w kategorii Certyfikaty. Wybierz pozycję Eksportuj, nadaj plikowi nazwę, wybierz format p12 , a następnie wybierz pozycję Zapisz.

    Export certificate

    Możesz wybrać ochronę certyfikatu przy użyciu hasła, ale jest to opcjonalne. Kliknij przycisk OK , jeśli chcesz pominąć tworzenie haseł. Zanotuj nazwę pliku i lokalizację wyeksportowanego certyfikatu .p12. Są one używane do włączania uwierzytelniania za pomocą usługi APNS.

    Uwaga

    Nazwa i lokalizacja pliku p12 mogą być inne niż to, co zostało na zdjęciu w tym samouczku.

Opcja 2. Tworzenie certyfikatu p8, który może być używany do uwierzytelniania opartego na tokenach

  1. Zanotuj następujące szczegóły:

    • Prefiks identyfikatora aplikacji (jest to identyfikator zespołu)
    • Identyfikator pakietu
  2. Po powrocie do pozycji Certyfikaty, Identyfikatory i profile kliknij pozycję Klucze. Jeśli masz już klucz skonfigurowany dla usługi APNS, możesz ponownie użyć certyfikatu p8 pobranego bezpośrednio po jego utworzeniu. Jeśli tak, możesz zignorować kroki od 3 do 5.

  3. + Kliknij przycisk (lub przycisk Utwórz klucz), aby utworzyć nowy klucz.

  4. Podaj odpowiednią wartość nazwy klucza, zaznacz opcję Apple Push Notifications Service (APNS), a następnie kliknij przycisk Kontynuuj, a następnie zarejestruj się na następnym ekranie.

  5. Kliknij przycisk Pobierz , a następnie przenieś plik p8 (poprzedzony prefiksem AuthKey_) do bezpiecznego katalogu lokalnego, a następnie kliknij przycisk Gotowe.

    Ważne

    Pamiętaj, aby zachować plik p8 w bezpiecznym miejscu (i zapisać kopię zapasową). Po pobraniu klucza nie można go ponownie pobrać; kopia serwera zostanie usunięta.

  6. W obszarze Klucze kliknij właśnie utworzony klucz (lub istniejący klucz, jeśli chcesz go użyć).

  7. Zanotuj wartość Identyfikator klucza.

  8. Otwórz certyfikat p8 w odpowiedniej wybranej aplikacji, takiej jak Visual Studio Code, a następnie zanotuj wartość klucza. Jest to wartość między kluczem prywatnym -----BEGIN----- a -----END PRIVATE KEY----- .

    -----BEGIN PRIVATE KEY-----
    <key_value>
    -----END PRIVATE KEY-----
    

    Jest to wartość tokenu, która będzie później używana do konfigurowania usługi Notification Hubs.

Na końcu tych kroków powinny być dostępne następujące informacje do późniejszego użycia w temacie Konfigurowanie centrum powiadomień przy użyciu informacji usługi APNS:

  • Identyfikator zespołu (zobacz krok 1)
  • Identyfikator pakietu (zobacz krok 1)
  • Identyfikator klucza (zobacz krok 7)
  • Wartość tokenu (wartość klucza p8, zobacz krok 8)

Tworzenie profilu aprowizacji

  1. Wróć do portalu aprowizacji systemu iOS, wybierz pozycję Certyfikaty, Identyfikatory i profile, wybierz pozycję Profile z menu po lewej stronie, a następnie wybierz, + aby utworzyć nowy profil. Zostanie wyświetlony ekran Rejestrowanie nowego profilu aprowizacji.

  2. Wybierz pozycję Tworzenie aplikacji systemu iOS w obszarze Programowanie jako typ profilu aprowizacji, a następnie wybierz pozycję Kontynuuj.

    Provisioning profile list

  3. Następnie wybierz identyfikator aplikacji utworzony z listy rozwijanej Identyfikator aplikacji, a następnie wybierz pozycję Kontynuuj.

    Select App ID

  4. W oknie Wybieranie certyfikatów wybierz certyfikat dewelopera używany do podpisywania kodu, a następnie wybierz pozycję Kontynuuj. Ten certyfikat nie jest utworzonym certyfikatem wypychania. Jeśli taki nie istnieje, musisz go utworzyć. Jeśli certyfikat istnieje, przejdź do następnego kroku. Aby utworzyć certyfikat dewelopera, jeśli taki certyfikat nie istnieje:

    1. Jeśli widzisz pozycję Brak dostępnych certyfikatów, wybierz pozycję Utwórz certyfikat.
    2. W sekcji Software (Oprogramowanie) wybierz pozycję Apple Development (Programowanie firmy Apple). Następnie wybierz pozycję Kontynuuj.
    3. Na ekranie Tworzenie nowego certyfikatu wybierz pozycję Wybierz plik.
    4. Przejdź do utworzonego wcześniej certyfikatu żądania podpisania certyfikatu, wybierz go, a następnie wybierz pozycję Otwórz.
    5. Wybierz Kontynuuj.
    6. Pobierz certyfikat dewelopera i zapamiętaj lokalizację, w której został zapisany.
  5. Wróć do strony Certyfikaty, Identyfikatory i profile , wybierz pozycję Profile z menu po lewej stronie, a następnie wybierz pozycję + , aby utworzyć nowy profil. Zostanie wyświetlony ekran Rejestrowanie nowego profilu aprowizacji.

  6. W oknie Wybieranie certyfikatów wybierz właśnie utworzony certyfikat dewelopera. Następnie wybierz pozycję Kontynuuj.

  7. Następnie wybierz urządzenia do użycia do testowania, a następnie wybierz pozycję Kontynuuj.

  8. Na koniec wybierz nazwę profilu w polu Nazwa profilu aprowizacji, a następnie wybierz pozycję Generuj.

    Choose provisioning profile name

  9. Po utworzeniu nowego profilu aprowizacji wybierz pozycję Pobierz. Zapamiętaj lokalizację, w której jest zapisywana.

  10. Przejdź do lokalizacji profilu aprowizacji, a następnie kliknij go dwukrotnie, aby zainstalować go na maszynie dewelopera Xcode.

Tworzenie centrum powiadomień

W tej sekcji utworzysz centrum powiadomień i skonfigurujesz uwierzytelnianie za pomocą usługi APNS przy użyciu certyfikatu wypychania p12 lub uwierzytelniania opartego na tokenach. Jeśli chcesz użyć centrum powiadomień, które zostało już utworzone, możesz przejść do kroku 5.

  1. Zaloguj się w witrynie Azure Portal.

  2. Wybierz pozycję Wszystkie usługi w menu po lewej stronie, a następnie wybierz pozycję Notification Hubs w sekcji Mobile . Wybierz ikonę gwiazdki obok nazwy usługi, aby dodać usługę do sekcji ULUBIONE w menu po lewej stronie. Po dodaniu usługi Notification Hubs do pozycji ULUBIONE wybierz ją.

    Azure portal

  3. Na stronie Notification Hubs wybierz pozycję Dodaj na pasku narzędzi.

    Add toolbar button

  4. Na stronie Notification Hubs wykonaj następujące czynności:

    1. Wprowadź nazwę w centrum powiadomień.
    2. Wprowadź nazwę w obszarze Tworzenie nowej przestrzeni nazw. Przestrzeń nazw zawiera co najmniej jedno centrum powiadomień.
    3. Wybierz wartość z listy rozwijanej Lokalizacja . Ta wartość określa lokalizację, w której chcesz utworzyć centrum powiadomień.
    4. Wybierz istniejącą grupę zasobów w grupie zasobów lub utwórz nową grupę zasobów.
    5. Wybierz pozycję Utwórz.

    Set properties

  5. Wybierz pozycję Powiadomienia (ikona dzwonka), a następnie wybierz pozycję Przejdź do zasobu. Możesz również odświeżyć listę na stronie Usługi Notification Hubs i wybrać centrum.

    Portal notifications

  6. Wybierz z listy pozycję Zasady dostępu. Należy pamiętać, że dostępne są dwa parametry połączenia. Będą one potrzebne później do obsługi powiadomień wypychanych.

    Ważne

    Nie używaj zasad DefaultFullSharedAccessSignature w aplikacji. Jest to przeznaczone tylko do użycia w zapleczu.

    Connection strings

Konfigurowanie centrum powiadomień przy użyciu informacji usługi APNS

W obszarze Usługi powiadomień wybierz pozycję Apple (APNS), a następnie wykonaj odpowiednie kroki na podstawie podejścia wybranego wcześniej w sekcji Tworzenie certyfikatu dla usługi Notification Hubs .

Uwaga

Użyj trybu produkcyjnego dla aplikacji tylko wtedy, gdy chcesz wysyłać powiadomienia wypychane do użytkowników, którzy kupili aplikację ze sklepu.

Opcja 1. Używanie certyfikatu wypychania p12

  1. Wybierz pozycję Certyfikat.

  2. Wybierz ikonę pliku.

  3. Wybierz wyeksportowany wcześniej plik p12, a następnie wybierz pozycję Otwórz.

  4. W razie potrzeby określ poprawne hasło.

  5. Wybierz tryb Piaskownica.

    Configure

  6. Wybierz pozycję Zapisz.

Opcja 2. Używanie uwierzytelniania opartego na tokenach

  1. Wybierz pozycję Token.

  2. Wprowadź następujące wartości uzyskane wcześniej:

    • Identyfikator klucza
    • Identyfikator pakietu
    • Identyfikator zespołu
    • Token
  3. Wybieranie piaskownicy

  4. Wybierz pozycję Zapisz.

Centrum powiadomień skonfigurowano teraz za pomocą usługi APNS. Masz również parametry połączenia potrzebne do zarejestrowania aplikacji i wysyłania powiadomień wypychanych.

Następne kroki

W tym samouczku utworzono i skonfigurowano centrum powiadomień na platformie Azure i skonfigurowano je tak, aby umożliwić wysyłanie powiadomień do aplikacji za pośrednictwem usługi Apple Push Notification Service (APNS). Następnie utworzymy przykładową aplikację dla systemu iOS i zintegrujemy zestaw SDK usługi Azure Notifications Hubs, aby umożliwić odbieranie powiadomień wypychanych wysyłanych za pośrednictwem witryny Azure Portal. Przejdź do następującego samouczka na podstawie wybranego języka: