Oktatóanyag: Értesítések küldése Univerzális Windows-platform alkalmazásoknak az Azure Notification Hubs használatával

Ebben az oktatóanyagban egy értesítési központot hoz létre leküldéses értesítések küldéséhez az Univerzális Windows-platformra (UWP) épülő alkalmazásba. Egy üres Windows Áruházbeli alkalmazást fog létrehozni, amely leküldéses értesítéseket fogad a Windows leküldéses értesítési szolgáltatásának (WNS) használatával. Ezután az értesítési központ használatával leküldéses értesítéseket küld az alkalmazást futtató összes eszközre.

Feljegyzés

Az oktatóanyag teljes kódját megtalálja a GitHubon.

Hajtsa végre a következő lépéseket:

  • Alkalmazás létrehozása a Windows Áruházban
  • Értesítési központ létrehozása
  • Windows-mintaalkalmazás létrehozása
  • Tesztértesítések küldése

Előfeltételek

  • Azure-előfizetés. Ha nem rendelkezik Azure-előfizetéssel, mindössze néhány perc alatt létrehozhat egy ingyenes Azure-fiókot a virtuális gép létrehozásának megkezdése előtt.
  • Microsoft Visual Studio 2017 vagy újabb verzió. Az oktatóanyagban szereplő példa a Visual Studio 2019-et használja.
  • UWP-alkalmazások telepített fejlesztőeszközei
  • Aktív Windows Áruházbeli fiók
  • Győződjön meg arról, hogy az alkalmazások és más feladók értesítéseinek lekérése beállítás engedélyezve van.
    • Indítsa el Gépház ablakot a számítógépen.
    • Válassza ki a Rendszer csempét.
    • Válassza az Értesítések > műveleteket a bal oldali menüből.
    • Ellenőrizze, hogy engedélyezve van-e az alkalmazások és más feladók értesítéseinek lekérése beállítás. Ha nincs engedélyezve, engedélyezze.

Ennek az oktatóanyagnak az elvégzése előfeltétel minden további, UWP-alkalmazásokkal kapcsolatos Notification Hubs-oktatóanyag elvégzéséhez.

Alkalmazás létrehozása a Windows Áruházban

Feljegyzés

A Microsoft Push Notification Service (MPNS) elavult, és már nem támogatott.

A leküldéses értesítések UWP-alkalmazásokba irányuló küldéséhez társítsa az alkalmazást a Windows Áruházhoz. Ezután konfigurálja az értesítési központot a WNS-sel való integrációra.

  1. Nyissa meg a Windows fejlesztőközpontját, jelentkezzen be Microsoft-fiókjával, majd kattintson a Create a new app (Új alkalmazás létrehozása) gombra.

    New app button

  2. Írja be az alkalmazás nevét, majd válassza a Reserve product name (Terméknév lefoglalása) lehetőséget. Ezzel létrehoz egy új Windows Áruházbeli regisztrációt az alkalmazás számára.

    Store app name

  3. Bontsa ki a Termékkezelés elemet, majd válassza a Termékadentitás lehetőséget. Jegyezze fel a csomag BIZTONSÁGI AZONOSÍTÓját, a Csomag/Identitás/Név, a Csomag/Identitás/Publisher és a Package/Properties/PublisherDisplayName értékeket.

    Partner center apps

  4. A Termékkezelés területen válassza a WNS/MPNS, majd az Alkalmazásregisztrációs portál lehetőséget. Jelentkezzen be Microsoft-fiókjába. Az alkalmazásregisztrációs lap egy új lapon nyílik meg.

    WNS page

  5. Az Essentials területen válassza ki az ügyfél hitelesítő adatait: Tanúsítvány vagy titkos kód hozzáadása.

    Notification Hub settings on Azure portal

  6. A Tanúsítványok > titkos kódok lap Ügyfélkódok területén válassza az Új ügyféltitkot. Miután létrehozott egy ügyfélkulcsot (más néven alkalmazáskulcsot), jegyezze fel, mielőtt kilép az oldalról.

    Figyelmeztetés

    Az ügyfélkód (alkalmazáskulcs) értékeit csak közvetlenül a létrehozásuk után tekintheti meg. A lap elhagyása előtt mindenképpen mentse a titkos kódot.

    Client secret on portal

    Figyelmeztetés

    Az alkalmazáskulcs és a csomag biztonsági azonosítója fontos biztonsági hitelesítő adatok. Ezeket az értékeket ne ossza meg senkivel, és ne terjessze az alkalmazással.

Értesítési központ létrehozása

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza az Összes szolgáltatás lehetőséget a bal oldali menüben. A screenshot showing select All Services for an existing namespace.

  3. Írja be a Notification Hubs kifejezést a Szűrőszolgáltatások szövegmezőbe. A szolgáltatás neve melletti csillag ikonnal felveheti a szolgáltatást a kedvencek szakaszba a bal oldali menüben. Válassza a Notification Hubs lehetőséget.

    A screenshot showing how to filter for notification hubs.

  4. A Notification Hubs lapon válassza a Létrehozás lehetőséget az eszköztáron.

    A screenshot showing how to create a new notification hub.

  5. Az Értesítési központ lap Alapismeretek lapján hajtsa végre a következő lépéseket:

    1. Az Előfizetésben válassza ki a használni kívánt Azure-előfizetés nevét, majd válasszon ki egy meglévő erőforráscsoportot, vagy hozzon létre egy újat.

    2. Adja meg az új névtér egyedi nevét a Névtér részletei mezőben.

    3. A névtér egy vagy több értesítési központot tartalmaz, ezért írja be a központ nevét a Notification Hub Részletei szakaszba.

    4. Válasszon egy értéket a Hely legördülő listából. Ez az érték határozza meg azt a helyet, ahol létre szeretné hozni a központot.

      Screenshot showing notification hub details.

    5. Tekintse át a Rendelkezésre állási zónák lehetőséget. Ha olyan régiót választott, amely rendelkezésre állási zónákkal rendelkezik, a jelölőnégyzet alapértelmezés szerint be van jelölve. A rendelkezésre állási zónák fizetős funkciók, ezért további díjakat adnak hozzá a szinthez.

    6. Válasszon vészhelyreállítási lehetőséget: Nincs, Párosított helyreállítási régió vagy Rugalmas helyreállítási régió. Ha a Párosított helyreállítási régiót választja, megjelenik a feladatátvételi régió. Ha a rugalmas helyreállítási régiót választja, a legördülő listából választhat a helyreállítási régiók listájából.

      Screenshot showing availability zone details.

    7. Válassza a Létrehozás lehetőséget.

  6. Ha az üzembe helyezés befejeződött, válassza az Erőforrás megnyitása lehetőséget.

A központ WNS-beállításainak konfigurálása

  1. A NOTIFICATION Standard kiadás TTINGS kategóriában válassza a Windows (WNS) lehetőséget.

  2. Adja meg a csomag biztonsági azonosítójának (például az "ms-app://<Your Package SID>") és a biztonsági kulcsnak (az alkalmazás titkos kódjának) az előző szakaszból feljegyzett értékeit.

  3. Kattintson az eszköztár Mentés elemére.

    The Package SID and Security Key boxes

Ezzel konfigurálta az értesítési központot a WNS-sel folytatott együttműködésre, és rendelkezésére állnak a kapcsolati sztringek az alkalmazás regisztrálásához és értesítések küldéséhez.

Windows-mintaalkalmazás létrehozása

  1. A Visual Studióban nyissa meg a Fájl menüt, válassza az Új, majd a Project lehetőséget.

  2. Az Új projekt létrehozása párbeszédpanelen hajtsa végre a következő lépéseket:

    1. A felső keresőmezőbe írja be a Windows Universal parancsot.

    2. A keresési eredmények között válassza az Üres alkalmazás (Univerzális Windows) lehetőséget, majd a Tovább gombot.

      New Project dialog

    3. Az új projekt konfigurálása párbeszédpanelen adja meg a projekt nevét és a projektfájlok helyét.

    4. Válassza a Létrehozás lehetőséget.

  3. A target (cél) és a minimum (minimális) platformverzió esetében fogadja el az alapértelmezett értékeket, majd kattintson az OK gombra.

  4. A Megoldáskezelő kattintson a jobb gombbal a Windows Áruházbeli alkalmazásprojektre, válassza a Közzététel lehetőséget, majd válassza az Alkalmazás társítása az Áruházhoz lehetőséget. Megjelenik az Associate Your App with the Windows Store (Alkalmazás társítása a Windows Áruházzal) varázsló.

  5. A varázslóban jelentkezzen be Microsoft-fiókjával.

  6. Jelölje ki a 2. lépésben regisztrált alkalmazást, majd válassza a Next (Tovább), végül az Associate (Társítás) lehetőséget. Ezzel hozzáadja a szükséges Windows Áruházbeli regisztrációs adatokat az alkalmazásjegyzékhez.

  7. A Visual Studióban kattintson a jobb gombbal a megoldásra, majd válassza a Manage NuGet Packages (NuGet-csomagok kezelése) lehetőséget. Megnyílik a Manage NuGet Packages (NuGet-csomagok kezelése) ablak.

  8. A keresőmezőben adja meg a WindowsAzure.Messaging.Managed kifejezést, válassza az Install (Telepítés) lehetőséget, és fogadja el a használati feltételeket.

    The Manage NuGet Packages window

    A művelet a Microsoft.Azure.NotificationHubs NuGet-csomag használatával letölti és telepíti a Windows rendszerhez készült Azure Notification Hubs kódtárat, és hozzáad egy rá mutató referenciát is.

  9. Nyissa meg a App.xaml.cs projektfájlt, és adja hozzá a következő utasításokat:

    using Windows.Networking.PushNotifications;
    using Microsoft.WindowsAzure.Messaging;
    using Windows.UI.Popups;
    
  10. A projekt fájljában App.xaml.cs keresse meg az osztályt App , és adja hozzá a következő InitNotificationsAsync metódusdefiníciót. Cserélje le <your hub name> az Azure Portalon létrehozott értesítési központ nevére, és cserélje le <Your DefaultListenSharedAccessSignature connection string> az DefaultListenSharedAccessSignature értesítési központ Access Polices lapján található kapcsolati sztring:

    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();
        }
    }
    

    Ez a kód lekéri a csatorna URI azonosítóját az alkalmazás számára a WNS-ből, majd regisztrálja a csatorna URI azonosítóját az értesítési központban.

    Feljegyzés

    Cserélje le a hub name helyőrzőt az Azure Portalon megjelenő értesítési központ nevére. Cserélje le a kapcsolati sztring helyőrzőt az előző szakaszban az DefaultListenSharedAccessSignature értesítési központ Access Polices oldaláról beszerzett kapcsolati sztring.

  11. Az eseménykezelő App.xaml.cstetején OnLaunched adja hozzá a következő hívást az új InitNotificationsAsync metódushoz:

    InitNotificationsAsync();
    

    Ez a művelet garantálja, hogy a csatorna URI-ja minden alkalommal regisztrálva van az értesítési központban, amikor az alkalmazás elindul.

  12. Kattintson Package.appxmanifest a jobb gombbal, és válassza a Kód megtekintése (F7) lehetőséget. Keresse meg <Identity .../> és cserélje le a Név értéket a Csomag/Identitás/Név értékre, és cserélje le a Közzétevő értékét a korábban létrehozott alkalmazás Csomag/Identitás/Közzétevő értékére.

  13. Az alkalmazás futtatásához nyomja le a billentyűzet F5 billentyűjét. Megjelenik a regisztrációs kulcsot tartalmazó párbeszédpanel. A párbeszédpanel bezárásához kattintson az OK gombra.

    Registration successful

Az alkalmazás készen áll bejelentési értesítéseket fogadni.

Tesztértesítések küldése

Ha gyorsan le szeretné tesztelni, hogyan fogadja az alkalmazás az értesítéseket, értesítéseket küldhet az Azure Portalról.

  1. Az Azure Portalon váltson az Áttekintés lapra, majd kattintson az eszköztár Tesztküldés gombjára.

    Test Send button

  2. A Tesztküldés ablakban hajtsa végre az alábbi műveleteket:

    1. A Platformok beállításnál válassza a Windows lehetőséget.

    2. Az Értesítés típusa beállításnál válassza a Bejelentés lehetőséget.

    3. Válassza az Küldés lehetőséget.

      The Test Send pane

  3. A Küldés művelet eredményét az ablak alján található Eredmény listában láthatja. Emellett egy figyelmeztető üzenet is megjelenik.

    Result of Send operation

  4. Az asztalon megjelenik egy értesítés, amely a Tesztüzenet szöveget tartalmazza.

    Notification message

Következő lépések

A portál vagy egy konzolalkalmazás használatával közvetített értesítéseket küldött az összes Windows-eszközére. Ha szeretné megtudni, hogy hogyan küldhet leküldéses értesítéseket adott eszközökre, lépjen tovább a következő oktatóanyagra: