Självstudie: skicka push-meddelanden till iOS-appar med hjälp av Azure Notification Hubs
Den här självstudien visar hur du konfigurerar Azure Notification Hubs och konfigurerar autentiseringsuppgifter för att skicka meddelanden till en iOS-enhet via Apple Push Notification Service (APNs).
Att köra den här självstudien är en förutsättning för de efterföljande kurserna för mål C och SWIFT iOS och omfattar följande steg:
- Generera filen för certifikat signerings förfrågan.
- Begär din app för push-meddelanden.
- Skapa en etablerings profil för appen.
- Skapa en meddelandehubb.
- Konfigurera Notification Hub med APN-information.
Förutsättningar
Du måste ha ett aktivt Azure-konto för att slutföra den här kursen. Om du inte har något konto kan skapa du ett kostnadsfritt utvärderingskonto på bara några minuter. Mer information om den kostnadsfria utvärderingsversionen av Azure finns Kostnadsfri utvärderingsversion av Azure.
Du behöver också följande:
- Ett aktivt Apple Developer -konto.
- En Mac som kör Xcode, tillsammans med ett giltigt certifikat för utvecklare som installerats i din nyckel Ring.
- En iPhone eller iPad som kör iOS version 10 eller senare.
- Din fysiska enhet som är registrerad i Apples Portal och kopplad till ditt certifikat.
Se till att läsa Azure Notification Hubs-översikten om du inte är bekant med tjänsten.
Anteckning
Notification Hub konfigureras för att endast använda begränsat läge för autentisering. Du bör inte använda detta autentiseringsläge för produktions arbets belastningar.
Generera filen för certifikat signerings förfrågan
APNS (Apple Push Notification Service) använder sig av certifikat för att autentisera dina push-meddelanden. Följ de här instruktionerna för att skapa nödvändiga push-certifikat för att skicka och ta emot meddelanden. Mer information om de här koncepten finns i den officiella Apple Push Notification Service-dokumentationen.
Generera CSR-filen (certifikat signerings förfrågan) som Apple använder för att generera ett signerat Push-certifikat:
Kör Nyckelhanteraren på din Mac. Den kan öppnas från mappen verktyg eller den andra mappen i Start fönstret.
Välj nyckel rings åtkomst, expandera certifikat assistenten och välj sedan begär ett certifikat från en certifikat utfärdare.
Anteckning
Som standard väljer åtkomst till nyckel ringar det första objektet i listan. Detta kan vara ett problem om du befinner dig i kategorin certifikat och certifikat utfärdaren Apple Worldwide Developer relation är inte det första objektet i listan. Kontrol lera att du har ett objekt som inte är ett nyckel objekt, eller att nyckeln för certifikat utfärdare för Apple Worldwide Developer-relation är vald, innan du genererar CSR (certifikat signerings förfrågan).
Välj din användar-e-postadress, ange ditt eget namn -värde, kontrol lera att du har angett Spara på disk och välj sedan Fortsätt. Lämna ca-e-postadress tomt eftersom det inte behövs.
Ange ett namn på CSR-filen i Spara som, Välj den plats där och välj sedan Spara.
Den här åtgärden sparar CSR-filen på den valda platsen. Standard platsen är Skriv bord. Kom ihåg den plats du valde för filen.
Registrera sedan din app med Apple, aktivera push-meddelanden och ladda upp den exporterade CSR-filen för att skapa ett push-certifikat.
Registrera din app för push-meddelanden
Om du vill skicka push-meddelanden till en iOS-App registrerar du ditt program med Apple och registrerar dig även för push-meddelanden.
Om du inte redan har registrerat din app kan du gå till iOS-etablerings portalen i Apple Developer Center. Logga in på portalen med ditt Apple-ID och välj identifierare. Välj sedan + att registrera en ny app.
På sidan Registrera en ny identifierare väljer du alternativ knappen app-ID . Välj sedan Fortsätt.
Uppdatera följande tre värden för din nya app och välj sedan Fortsätt:
Beskrivning: Ange ett beskrivande namn för din app.
Paket-ID: Ange ett paket-ID för formatet organisations-ID. produkt namn som nämns i program distributions guiden. Organisations-ID och produkt namn måste matcha organisations-ID och produkt namn som du använder när du skapar ditt Xcode-projekt. I följande skärm bild används NotificationHubs -värdet som ett organisations-ID och värdet GetStarted används som produkt namn. Se till att värdet för paket identifieraren matchar värdet i Xcode-projektet, så att Xcode använder rätt publicerings profil.
Push-meddelanden: Markera alternativet push-meddelanden i avsnittet funktioner .
Den här åtgärden genererar ditt app-ID och begär att du bekräftar informationen. Välj Fortsätt och välj Registrera för att bekräfta det nya app-ID: t.
När du har valt Registrera visas det nya app-ID: t som ett rad objekt på sidan certifikat, identifierare & profiler .
På sidan certifikat, identifierare & profiler , under identifierare, letar du upp det ID-rads objekt för app-ID som du nyss skapade och väljer dess rad för att visa skärmen Redigera appens ID-konfiguration .
Skapa ett certifikat för Notification Hubs
Anteckning
Med lanseringen av iOS 13 kan du bara ta emot tysta meddelanden med hjälp av tokenbaserad autentisering. Om du använder certifikatbaserad autentisering för dina APN-autentiseringsuppgifter måste du växla till med hjälp av tokenbaserad autentisering.
Ett certifikat krävs för att meddelande hubben ska fungera med APN. Detta kan göras på ett av två sätt:
Skapa en . p12 -fil som kan överföras direkt till Notification Hubs.
Skapa en . P8 -fil som kan användas för tokenbaserad autentisering (den nyare metoden).
Det andra alternativet har ett antal fördelar jämfört med att använda certifikat, enligt beskrivningen i token-baserad (http/2)-autentisering för APN. Men det finns anvisningar för båda metoderna.
Alternativ 1: skapa ett. p12 Push-certifikat som kan överföras direkt till Notification Hubs
Rulla ned till alternativet kontrollerade push-meddelanden och välj sedan Konfigurera för att skapa certifikatet.
Fönstret SSL-certifikat för Apple Push Notification Service visas. Välj knappen Skapa certifikat i avsnittet utvecklings-SSL-certifikat .
Skärmen skapa ett nytt certifikat visas.
Anteckning
Den här guiden använder ett utvecklarcertifikat. Du använder samma process när du registrerar ett driftscertifikat. Kontrol lera att du använder samma certifikat typ när du skickar meddelanden.
Välj Välj fil, bläddra till den plats där du sparade CSR-filen från den första aktiviteten och dubbelklicka sedan på certifikat namnet för att läsa in det. Välj sedan Fortsätt.
När portalen har skapat certifikatet väljer du knappen Ladda ned . Spara certifikatet och kom ihåg platsen där det sparades.
Certifikatet laddas ned och sparas i mappen hämtade filer .
Som standard heter det hämtade utvecklings certifikatet aps_development. cer.
Dubbelklicka på det nedladdade push-certifikatet APS _ Development. cer. Den här åtgärden installerar det nya certifikatet i nyckelringen enligt följande bild:
Även om namnet i ditt certifikat kan vara olika, kommer namnet att föregås av Apple Development iOS push-tjänster.
I nyckelhanteraren högerklickar du på det nya push-certifikatet som du skapade i Certifikat-kategorin. Välj Exportera, namnge filen, Välj . p12 -formatet och välj sedan Spara.
Du kan välja att skydda certifikatet med ett lösen ord, men det är valfritt. Klicka på OK om du vill kringgå lösen ords skapande. Anteckna filnamnet och platsen dit .p12-certifikatet exporterats. De används för att aktivera autentisering med APN.
Anteckning
Namnet på och platsen för. p12-filen kan skilja sig från vad som visas i den här självstudien.
Alternativ 2: skapa ett. P8-certifikat som kan användas för tokenbaserad autentisering
Anteckna följande information:
- App-ID-prefix (detta är ett Team-ID)
- Samlings-ID
Tillbaka i certifikat, identifierare & profiler, klickar du på nycklar. Om du redan har en nyckel som har kon figurer ATS för APN kan du använda det. P8-certifikat som du laddade ned direkt efter att det har skapats. I så fall kan du ignorera steg 3 till 5.
Klicka på + knappen (eller knappen skapa en nyckel ) för att skapa en ny nyckel.
Ange ett lämpligt nyckel namns värde, kontrol lera APNs-alternativet (Apple Push Notifications service) och klicka sedan på Fortsätt, följt av Registrera på nästa skärm.
Klicka på Hämta och flytta . P8 -filen (med prefixet till
AuthKey_) till en säker lokal katalog och klicka sedan på Slutför.Viktigt
Se till att behålla din. P8-fil på en säker plats (och spara en säkerhets kopia). När du har laddat ned nyckeln går det inte att ladda ned den igen. Server kopian tas bort.
Klicka på nyckeln som du nyss skapade (eller en befintlig nyckel om du har valt att använda den i stället) på nycklar.
Anteckna värdet för nyckel-ID .
Öppna ditt. P8-certifikat i ett lämpligt program, till exempel Visual Studio Code, och anteckna nyckel värdet. Detta är värdet mellan -----att starta den privata nyckeln----- och -----avsluta den privata nyckeln----- .
-----BEGIN PRIVATE KEY----- <key_value> -----END PRIVATE KEY-----Detta är det token-värde som kommer att användas senare för att konfigurera Notification Hubs.
I slutet av de här stegen bör du ha följande information för att kunna använda senare i Konfigurera Notification Hub med APN-information:
- Team-ID (se steg 1)
- Paket-ID (se steg 1)
- Nyckel-ID (se steg 7)
- Token-värde (. P8-nyckel värde, se steg 8)
Skapa en etablerings profil
Gå tillbaka till iOS-etablerings portalen, Välj certifikat, identifierare & profiler, Välj profiler på den vänstra menyn och välj sedan + för att skapa en ny profil. Skärmen Registrera en ny etablerings profil visas.
Välj utveckling av iOS-appar under utveckling som etablerings profil typ och välj sedan Fortsätt.
Välj sedan det app-ID som du skapade i list rutan app-ID och välj sedan Fortsätt.
I fönstret Välj certifikat väljer du det utvecklings certifikat som du använder för kod signering och väljer Fortsätt. Det här certifikatet är inte det Push-certifikat som du har skapat. Om det inte finns någon sådan, måste du skapa den. Om det finns ett certifikat går du vidare till nästa steg. Så här skapar du ett utvecklings certifikat om det inte finns något:
- Om du inte ser några certifikat tillgängliga väljer du Skapa certifikat.
- Välj Apple-utveckling i avsnittet program vara . Välj sedan Fortsätt.
- På skärmen skapa ett nytt certifikat väljer du Välj fil.
- Bläddra till certifikatet signerings förfrågan som du skapade tidigare, markera det och välj sedan Öppna.
- Välj Fortsätt.
- Hämta utvecklings certifikatet och kom ihåg platsen där det sparades.
Gå tillbaka till sidan certifikat, identifierare & profiler , Välj profiler på den vänstra menyn och välj sedan + för att skapa en ny profil. Skärmen Registrera en ny etablerings profil visas.
I fönstret Välj certifikat väljer du det utvecklings certifikat som du nyss skapade. Välj sedan Fortsätt.
Välj sedan de enheter som ska användas för testning och välj Fortsätt.
Slutligen väljer du ett namn för profilen i etablerings profil namn och väljer sedan skapa.
När den nya etablerings profilen har skapats väljer du Hämta. Kom ihåg platsen där den sparades.
Bläddra till platsen för etablerings profilen och dubbelklicka sedan på den för att installera den på Xcode-utvecklings datorn.
Skapa en meddelandehubb
I det här avsnittet skapar du en Notification Hub och konfigurerar autentisering med APNS genom att använda antingen. p12 Push-certifikat eller tokenbaserad autentisering. Om du vill använda ett meddelande nav som du redan har skapat kan du gå vidare till steg 5.
Logga in på Azure-portalen.
Välj alla tjänster på den vänstra menyn och välj sedan Notification Hubs i avsnittet mobil . Välj stjärn ikonen bredvid tjänst namnet för att lägga till tjänsten i Favoriter -avsnittet på den vänstra menyn. När du har lagt till Notification Hubs i Favoriter väljer du den.
På sidan Notification Hubs väljer du Lägg till i verktygsfältet.
Utför följande steg på sidan Notification Hubs :
- Ange ett namn i Notification Hub.
- Ange ett namn i skapa ett nytt namn område. En namnrymd innehåller ett eller flera Notification Hub.
- Välj ett värde i list rutan plats . Det här värdet anger den plats där du vill skapa Notification Hub.
- Välj en befintlig resurs grupp i resurs gruppen eller skapa en ny resurs grupp.
- Välj Skapa.
Välj meddelanden (klock ikonen) och välj sedan gå till resurs. Du kan också uppdatera listan på sidan Notification Hubs och välja hubben.
Välj Åtkomstprinciper i listan. Observera att de två anslutnings strängarna är tillgängliga för dig. Du behöver dem senare för att hantera push-meddelanden.
Viktigt
Använd inte DefaultFullSharedAccessSignature -principen i ditt program. Detta är endast avsett att användas i Server delen.
Konfigurera Notification Hub med APN-information
Under Notification Services väljer du Apple (APNs) och följer sedan lämpliga steg baserat på den metod som du valde tidigare i avsnittet skapa ett certifikat för Notification Hubs .
Anteckning
Använd endast produktion för program läge om du vill skicka push-meddelanden till användare som har köpt din app från Store.
Alternativ 1: Använd ett. p12-Push-certifikat
Välj Certifikat.
Välj filikonen.
Välj den. P12-fil som du exporterade tidigare och välj sedan Öppna.
Ange rätt lösen ord om det behövs.
Välj Sandbox-läge.
Välj Spara.
Alternativ 2: Använd tokenbaserad autentisering
Välj token.
Ange följande värden som du har köpt tidigare:
- Nyckel-ID
- Samlings-ID
- Team-ID
- Token
Välj sandbox
Välj Spara.
Du har nu konfigurerat din Notification Hub med APN. Du har också de anslutnings strängar som krävs för att registrera din app och skicka push-meddelanden.
Nästa steg
I den här självstudien har du skapat och konfigurerat en Notification Hub i Azure och konfigurerat det så att meddelanden kan skickas till ditt program via Apple Push Notification Service (APN). Härnäst ska vi skapa ett exempel på iOS-program och integrera Azure Notifications Hub SDK så att det kan ta emot push-meddelanden som skickas via Azure Portal. Gå vidare till följande självstudie baserat på ditt val av språk: