Share via


Leküldéses értesítések hozzáadása a Xamarin.Forms-alkalmazáshoz

Áttekintés

Ebben az oktatóanyagban leküldéses értesítéseket ad hozzá a Xamarin.Forms gyors üzembe helyezéséből eredő összes projekthez. Ez azt jelenti, hogy a rendszer minden rekord beszúrásakor leküldéses értesítést küld az összes platformfüggetlen ügyfélnek.

Ha nem használja a letöltött gyorsindítási kiszolgálói projektet, szüksége lesz a leküldéses értesítési bővítménycsomagra. További információ: A .NET háttérkiszolgálóI SDK használata az Azure Mobile Appshez.

Előfeltételek

iOS esetén Apple Developer Program-tagságra és fizikai iOS-eszközre lesz szüksége. Az iOS-szimulátor nem támogatja a leküldéses értesítéseket.

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

A Azure App Service Mobile Apps funkciója az Azure Notification Hubs használatával küld leküldéseket, így egy értesítési központot fog konfigurálni a mobilalkalmazáshoz.

  1. A Azure Portal nyissa meg az App Servicest, majd válassza ki az alkalmazás háttérrendszerét. A Beállítások területen válassza a Leküldés lehetőséget.

  2. Ha értesítési központ-erőforrást szeretne hozzáadni az alkalmazáshoz, válassza a Csatlakozás lehetőséget. Létrehozhat egy központot, vagy csatlakozhat egy meglévőhöz.

    Központ konfigurálása

Most már csatlakoztatott egy értesítési központot a Mobile Apps háttérprojektjéhez. Később úgy konfigurálja ezt az értesítési központot, hogy egy platformértesítő rendszerhez (PNS) csatlakozzon az eszközökre való leküldéshez.

A kiszolgálóprojekt frissítése leküldéses értesítések küldéséhez

Ebben a szakaszban frissíti a meglévő Mobile Apps háttérprojekt kódját, hogy minden új elem hozzáadásakor leküldéses értesítést küldjön. Ezt a folyamatot az Azure Notification Hubs sablonfunkciója működteti, amely platformfüggetlen leküldéseket tesz lehetővé. A különböző ügyfelek sablonokkal vannak regisztrálva leküldéses értesítésekhez, és egyetlen univerzális leküldés minden ügyfélplatformra elérhető.

Válasszon az alábbi eljárások közül, amelyek megegyeznek a háttérprojekt típusával – .NET háttérrendszer vagy Node.js háttérrendszer.

.NET háttérprojekt

  1. A Visual Studióban kattintson a jobb gombbal a kiszolgálóprojektre. Ezután válassza a Manage NuGet Packages (NuGet-csomagok kezelése) lehetőséget. Keressen rá a kifejezésre Microsoft.Azure.NotificationHubs, majd válassza a Telepítés lehetőséget. Ez a folyamat telepíti a Notification Hubs-kódtárat, amely értesítéseket küld a háttérrendszerből.

  2. A kiszolgálóprojektben nyissa meg a Controllers>TodoItemController.cs fájlt. Ezután adja hozzá a következő using utasításokat:

    using System.Collections.Generic;
    using Microsoft.Azure.NotificationHubs;
    using Microsoft.Azure.Mobile.Server.Config;
    
  3. A PostTodoItem metódusban adja hozzá a következő kódot az InsertAsync hívása után:

    // Get the settings for the server project.
    HttpConfiguration config = this.Configuration;
    MobileAppSettingsDictionary settings =
        this.Configuration.GetMobileAppSettingsProvider().GetMobileAppSettings();
    
    // Get the Notification Hubs credentials for the mobile app.
    string notificationHubName = settings.NotificationHubName;
    string notificationHubConnection = settings
        .Connections[MobileAppSettingsKeys.NotificationHubConnectionString].ConnectionString;
    
    // Create a new Notification Hub client.
    NotificationHubClient hub = NotificationHubClient
    .CreateClientFromConnectionString(notificationHubConnection, notificationHubName);
    
    // Send the message so that all template registrations that contain "messageParam"
    // receive the notifications. This includes APNS, GCM, WNS, and MPNS template registrations.
    Dictionary<string,string> templateParams = new Dictionary<string,string>();
    templateParams["messageParam"] = item.Text + " was added to the list.";
    
    try
    {
        // Send the push notification and log the results.
        var result = await hub.SendTemplateNotificationAsync(templateParams);
    
        // Write the success result to the logs.
        config.Services.GetTraceWriter().Info(result.State.ToString());
    }
    catch (System.Exception ex)
    {
        // Write the failure result to the logs.
        config.Services.GetTraceWriter()
            .Error(ex.Message, null, "Push.SendAsync Error");
    }
    

    Ez a folyamat egy sablonértesítést küld, amely tartalmazza az elemet. Új elem beszúrásakor megjelenő szöveg.

  4. Tegye közzé újra a kiszolgálóprojektet.

Node.js háttérprojekt

  1. Állítsa be a háttérprojektet.

  2. Cserélje le a todoitem.js meglévő kódját a következő kódra:

    var azureMobileApps = require('azure-mobile-apps'),
    promises = require('azure-mobile-apps/src/utilities/promises'),
    logger = require('azure-mobile-apps/src/logger');
    
    var table = azureMobileApps.table();
    
    table.insert(function (context) {
    // For more information about the Notification Hubs JavaScript SDK,
    // see https://aka.ms/nodejshubs.
    logger.info('Running TodoItem.insert');
    
    // Define the template payload.
    var payload = '{"messageParam": "' + context.item.text + '" }';  
    
    // Execute the insert. The insert returns the results as a promise.
    // Do the push as a post-execute action within the promise flow.
    return context.execute()
        .then(function (results) {
            // Only do the push if configured.
            if (context.push) {
                // Send a template notification.
                context.push.send(null, payload, function (error) {
                    if (error) {
                        logger.error('Error while sending push notification: ', error);
                    } else {
                        logger.info('Push notification sent successfully!');
                    }
                });
            }
            // Don't forget to return the results from the context.execute().
            return results;
        })
        .catch(function (error) {
            logger.error('Error while running context.execute: ', error);
        });
    });
    
    module.exports = table;  
    

    Ez a folyamat egy sablonértesítést küld, amely tartalmazza az item.text szöveget egy új elem beszúrásakor.

  3. Amikor szerkessze a fájlt a helyi számítógépen, tegye közzé újra a kiszolgálóprojektet.

Az Android-projekt konfigurálása és futtatása (nem kötelező)

Töltse ki ezt a szakaszt az Android Xamarin.Forms Droid projektjének leküldéses értesítések engedélyezéséhez.

A Firebase Cloud Messaging (FCM) engedélyezése

  1. Jelentkezzen be a Firebase konzoljába. Hozzon létre egy új Firebase-projektet, ha nem rendelkezik még ilyennel.

  2. A projekt létrehozása után válassza az Add Firebase to your Android app (A Firebase hozzáadása az Android-alkalmazáshoz) lehetőséget.

    Firebase hozzáadása Android-alkalmazáshoz

  3. Az Add Firebase to your Android app (Tűzbázis hozzáadása androidos alkalmazáshoz ) lapon hajtsa végre a következő lépéseket:

    1. Android-csomagnév esetén másolja ki az applicationId értékét az alkalmazás build.gradle fájljában. Ebben a példában a következő: com.fabrikam.fcmtutorial1app.

      Adja meg a csomag nevét

    2. Válassza az Alkalmazás regisztrálása lehetőséget.

  4. Válassza a Google-services.json letöltése lehetőséget, mentse a fájlt a projekt alkalmazásmappájába , majd válassza a Tovább gombot.

    A google-services.json letöltése

  5. Végezze el az alábbi konfigurációs módosításokat a projekten az Android Studióban.

    1. A projektszintű build.gradle fájlban (<project>/build.gradle) adja hozzá a következő utasítást a dependencies szakaszhoz.

      classpath 'com.google.gms:google-services:4.0.1'
      
    2. Az alkalmazásszintű build.gradle fájlban (<project>/<app-module>/build.gradle) adja hozzá a következő utasításokat a függőségek szakaszhoz.

      implementation 'com.google.firebase:firebase-core:16.0.8'
      implementation 'com.google.firebase:firebase-messaging:17.3.4'
      
    3. Adja hozzá a következő sort az alkalmazásszintű build.gradle fájl végéhez a dependencies szakasz után.

      apply plugin: 'com.google.gms.google-services'
      
    4. Válassza a Szinkronizálás most lehetőséget az eszköztáron.

      build.gradle konfigurációs módosítások

  6. Kattintson a Tovább gombra.

  7. Válassza a Lépés kihagyása lehetőséget.

    Az utolsó lépés kihagyása

  8. A Firebase konzolján kattintson a projektjéhez tartozó fogaskerékre. Ezután kattintson a Project Settings (Projektbeállítások) elemre.

    A projektbeállítások kiválasztása

  9. Ha még nem töltötte le a google-services.json fájlt az Android Studio-projekt alkalmazásmappájába , ezt ezen a lapon teheti meg.

  10. Váltson a felső Cloud Messaging (Felhőbeli üzenetkezelés ) lapra.

  11. Másolja ki és mentse a Kiszolgálókulcsot későbbi használatra. Ezt az értéket használja a központ konfigurálásához.

A Mobile Apps háttérrendszerének konfigurálása leküldéses kérelmek küldésére az FCM használatával

  1. A Azure Portal válassza az Összes >App Servicestallózásalehetőséget. Ezután válassza ki a Mobile Apps háttérrendszerét.
  2. A Beállítások területen válassza a Leküldés lehetőséget. Ezután válassza a Leküldéses értesítési szolgáltatások konfigurálása lehetőséget.
  3. Lépjen a Google (GCM) webhelyre. Adja meg a Firebase-konzolról beszerzett FCM örökölt kiszolgálókulcsot, majd válassza a Mentés lehetőséget.

A szolgáltatás most már úgy van konfigurálva, hogy működjön a Firebase cloud messaging szolgáltatással.

Leküldéses értesítések hozzáadása az Android-projekthez

Az FCM-hez konfigurált háttérrendszerrel összetevőket és kódokat adhat hozzá az ügyfélhez az FCM-ben való regisztrációhoz. Leküldéses értesítésekre is regisztrálhat az Azure Notification Hubsban a Mobile Apps háttérrendszerén keresztül, és értesítéseket fogadhat.

  1. A Droid projektben kattintson a jobb gombbal a Hivatkozások > NuGet-csomagok kezelése ... elemre.
  2. A NuGet-csomagkezelő ablakban keresse meg a Xamarin.Firebase.Messaging csomagot, és adja hozzá a projekthez.
  3. A Droid-projekt projekttulajdonságaiban állítsa be, hogy az alkalmazás az Android 7.0-s vagy újabb verziójával legyen lefordítva.
  4. Adja hozzá a Firebase-konzolról letöltött google-services.json fájlt a Droid-projekt gyökeréhez, és állítsa a buildelési műveletet a GoogleServicesJson értékre. További információ: A Google Services JSON-fájljának hozzáadása.

Regisztráció a Firebase Cloud Messagingben

  1. Nyissa meg az AndroidManifest.xml fájlt, és illessze a következő <receiver> elemeket a <application> elembe:

    <receiver android:name="com.google.firebase.iid.FirebaseInstanceIdInternalReceiver" android:exported="false" />
    <receiver android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver" android:exported="true" android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
        <action android:name="com.google.android.c2dm.intent.RECEIVE" />
        <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
        <category android:name="${applicationId}" />
        </intent-filter>
    </receiver>
    

A Firebase-példányazonosító szolgáltatás implementálása

  1. Adjon hozzá egy új osztályt a nevű Droid-projekthezFirebaseRegistrationService, és győződjön meg arról, hogy a következő using utasítások szerepelnek a fájl tetején:

    using System.Threading.Tasks;
    using Android.App;
    using Android.Util;
    using Firebase.Iid;
    using Microsoft.WindowsAzure.MobileServices;
    
  2. Cserélje le az üres FirebaseRegistrationService osztályt a következő kódra:

    [Service]
    [IntentFilter(new[] { "com.google.firebase.INSTANCE_ID_EVENT" })]
    public class FirebaseRegistrationService : FirebaseInstanceIdService
    {
        const string TAG = "FirebaseRegistrationService";
    
        public override void OnTokenRefresh()
        {
            var refreshedToken = FirebaseInstanceId.Instance.Token;
            Log.Debug(TAG, "Refreshed token: " + refreshedToken);
            SendRegistrationTokenToAzureNotificationHub(refreshedToken);
        }
    
        void SendRegistrationTokenToAzureNotificationHub(string token)
        {
            // Update notification hub registration
            Task.Run(async () =>
            {
                await AzureNotificationHubService.RegisterAsync(TodoItemManager.DefaultManager.CurrentClient.GetPush(), token);
            });
        }
    }
    

    Az FirebaseRegistrationService osztály feladata olyan biztonsági jogkivonatok létrehozása, amelyek engedélyezik, hogy az alkalmazás hozzáférjen az FCM-hez. A OnTokenRefresh metódus akkor lesz meghívva, ha az alkalmazás regisztrációs jogkivonatot kap az FCM-től. A metódus lekéri a jogkivonatot a FirebaseInstanceId.Instance.Token tulajdonságból, amelyet az FCM aszinkron módon frissít. A OnTokenRefresh rendszer ritkán hívja meg a metódust, mert a jogkivonat csak akkor frissül, ha az alkalmazást telepíti vagy eltávolítja, amikor a felhasználó törli az alkalmazásadatokat, amikor az alkalmazás törli a példányazonosítót, vagy ha a jogkivonat biztonsága sérült. Emellett az FCM-példányazonosító szolgáltatás kérni fogja, hogy az alkalmazás rendszeresen, általában 6 havonta frissítse a jogkivonatát.

    A OnTokenRefresh metódus meghívja a SendRegistrationTokenToAzureNotificationHub metódust is, amely a felhasználó regisztrációs jogkivonatának az Azure Notification Hubhoz való társítására szolgál.

Regisztráció az Azure Notification Hubbal

  1. Adjon hozzá egy új osztályt a nevű Droid-projekthezAzureNotificationHubService, és győződjön meg arról, hogy a következő using utasítások szerepelnek a fájl tetején:

    using System;
    using System.Threading.Tasks;
    using Android.Util;
    using Microsoft.WindowsAzure.MobileServices;
    using Newtonsoft.Json.Linq;
    
  2. Cserélje le az üres AzureNotificationHubService osztályt a következő kódra:

    public class AzureNotificationHubService
    {
        const string TAG = "AzureNotificationHubService";
    
        public static async Task RegisterAsync(Push push, string token)
        {
            try
            {
                const string templateBody = "{\"data\":{\"message\":\"$(messageParam)\"}}";
                JObject templates = new JObject();
                templates["genericMessage"] = new JObject
                {
                    {"body", templateBody}
                };
    
                await push.RegisterAsync(token, templates);
                Log.Info("Push Installation Id: ", push.InstallationId.ToString());
            }
            catch (Exception ex)
            {
                Log.Error(TAG, "Could not register with Notification Hub: " + ex.Message);
            }
        }
    }
    

    A RegisterAsync metódus létrehoz egy egyszerű értesítési üzenetsablont JSON-ként, és regisztrál, hogy sablonértesítéseket kapjon az értesítési központtól a Firebase regisztrációs jogkivonatával. Ez biztosítja, hogy az Azure Notification Hubról küldött értesítések a regisztrációs jogkivonat által képviselt eszközre irányulnak.

Leküldéses értesítés tartalmának megjelenítése

  1. Adjon hozzá egy új osztályt a nevű Droid-projekthezFirebaseNotificationService, és győződjön meg arról, hogy a következő using utasítások szerepelnek a fájl tetején:

    using Android.App;
    using Android.Content;
    using Android.Media;
    using Android.Support.V7.App;
    using Android.Util;
    using Firebase.Messaging;
    
  2. Cserélje le az üres FirebaseNotificationService osztályt a következő kódra:

    [Service]
    [IntentFilter(new[] { "com.google.firebase.MESSAGING_EVENT" })]
    public class FirebaseNotificationService : FirebaseMessagingService
    {
        const string TAG = "FirebaseNotificationService";
    
        public override void OnMessageReceived(RemoteMessage message)
        {
            Log.Debug(TAG, "From: " + message.From);
    
            // Pull message body out of the template
            var messageBody = message.Data["message"];
            if (string.IsNullOrWhiteSpace(messageBody))
                return;
    
            Log.Debug(TAG, "Notification message body: " + messageBody);
            SendNotification(messageBody);
        }
    
        void SendNotification(string messageBody)
        {
            var intent = new Intent(this, typeof(MainActivity));
            intent.AddFlags(ActivityFlags.ClearTop);
            //Unique request code to avoid PendingIntent collision.
            var requestCode = new Random().Next();
            var pendingIntent = PendingIntent.GetActivity(this, requestCode, intent, PendingIntentFlags.OneShot);
            var notificationBuilder = new NotificationCompat.Builder(this)
                .SetSmallIcon(Resource.Drawable.ic_stat_ic_notification)
                .SetContentTitle("New Todo Item")
                .SetContentText(messageBody)
                .SetContentIntent(pendingIntent)
                .SetSound(RingtoneManager.GetDefaultUri(RingtoneType.Notification))
                .SetAutoCancel(true);
    
            var notificationManager = NotificationManager.FromContext(this);
            notificationManager.Notify(0, notificationBuilder.Build());
        }
    }
    

    A OnMessageReceived metódus, amely akkor lesz meghívva, amikor egy alkalmazás értesítést kap az FCM-től, kinyeri az üzenet tartalmát, és meghívja a metódust SendNotification . Ez a módszer az üzenet tartalmát helyi értesítéssé alakítja, amely az alkalmazás futása közben indul el, és az értesítés megjelenik az értesítési területen.

Most már készen áll a leküldéses értesítések tesztelésére az Android-eszközön vagy az emulátoron futó alkalmazásban.

Leküldéses értesítések tesztelése Android-alkalmazásban

Az első két lépésre csak akkor van szükség, ha emulátoron tesztel.

  1. Győződjön meg arról, hogy a Google Play Services szolgáltatással konfigurált eszközön vagy emulátoron helyez üzembe vagy hibakeresést. Ennek ellenőrzéséhez ellenőrizze, hogy a Play-alkalmazások telepítve vannak-e az eszközön vagy az emulátoron.
  2. Google-fiók hozzáadása az Android-eszközhöz az Alkalmazások>beállításai Fiók>hozzáadása elemre kattintva. Ezután az utasításokat követve adjon hozzá egy meglévő Google-fiókot az eszközhöz, vagy hozzon létre egy újat.
  3. A Visual Studióban vagy a Xamarin Studióban kattintson a jobb gombbal a Droid projektre, és válassza a Beállítás indítási projektként parancsot.
  4. Kattintson a Futtatás gombra a projekt létrehozásához, és indítsa el az alkalmazást androidos eszközén vagy emulátorán.
  5. Az alkalmazásban írjon be egy feladatot, majd kattintson a plusz (+) ikonra.
  6. Ellenőrizze, hogy egy elem hozzáadásakor értesítés érkezik-e.

Az iOS-projekt konfigurálása és futtatása (nem kötelező)

Ez a szakasz az iOS-eszközökhöz készült Xamarin iOS-projektek futtatásával foglalkozik. Kihagyhatja ezt a részt, ha nem dolgozik iOS-eszközökkel.

A tanúsítvány-aláírási kérelemfájl létrehozása

Az Apple Push Notification Service (APNs) tanúsítványokat használ a leküldéses értesítések hitelesítéséhez. Kövesse ezeket az utasításokat az értesítések küldéséhez és fogadásához szükséges leküldéses tanúsítvány létrehozásához. További információért lásd az Apple Push Notification szolgáltatás hivatalos dokumentációját.

Hozza létre a Tanúsítvány-aláírási kérelem (CSR) fájlt, amelyet az Apple egy aláírt leküldéses tanúsítvány létrehozásához használ.

  1. Futtassa a Kulcskarika-elérés eszközt Mac számítógépén. A Utilities mappából vagy a Launchpad Egyéb mappájából nyitható meg.

  2. Válassza a Kulcskarika-hozzáférés lehetőséget, bontsa ki a Tanúsítványsegéd elemet, majd válassza a Tanúsítvány kérése hitelesítésszolgáltatótól lehetőséget.

    Új tanúsítvány kérése a Kulcskarika-eléréssel

    Megjegyzés

    Alapértelmezés szerint a Keychain Access kiválasztja a lista első elemét. Ez akkor lehet probléma, ha a Tanúsítványok kategóriában van, és az Apple Worldwide Developer Relations Hitelesítésszolgáltató nem az első elem a listában. A CSR (tanúsítvány-aláírási kérelem) létrehozása előtt győződjön meg arról, hogy van egy nem kulcseleme, vagy az Apple Worldwide Developer Relations hitelesítésszolgáltatói kulcs van kiválasztva.

  3. Válassza ki a Felhasználó Email címét, adja meg a Köznapi név értékét, győződjön meg arról, hogy a Lemezre mentve értéket adja meg, majd válassza a Folytatás lehetőséget. Hagyja üresen a hitelesítésszolgáltató Email Cím mezőt, mert nincs rá szükség.

    Szükséges tanúsítványinformációk

  4. Adja meg a CSR-fájl nevét a Mentés másként területen, válassza ki a helyet a Hol, majd válassza a Mentés lehetőséget.

    Válassza ki a tanúsítvány fájlnevét

    Ez a művelet a CSR-fájlt a kiválasztott helyre menti. Az alapértelmezett hely az Asztal. Jegyezze meg a fájlhoz választott helyet.

Ezután regisztrálja alkalmazását az Apple-ben, engedélyezze a leküldéses értesítéseket, és töltse fel az exportált CSR-t egy leküldéses tanúsítvány létrehozásához.

Alkalmazás regisztrálása leküldéses értesítésekhez

Ha leküldéses értesítéseket szeretne küldeni egy iOS-alkalmazásnak, regisztrálja alkalmazását az Apple-ben, és regisztráljon leküldéses értesítésekre is.

  1. Ha még nem regisztrálta az alkalmazást, keresse meg az iOS kiépítési portálját az Apple Fejlesztői központban. Jelentkezzen be a portálra az Apple ID azonosítójával, és válassza az Azonosítók lehetőséget. Ezután válassza a lehetőséget + egy új alkalmazás regisztrálásához.

    Az iOS Provisioning Portal alkalmazásazonosítói oldala

  2. Az Új azonosító regisztrálása képernyőn válassza az Alkalmazásazonosítók választógombot. Ezután válassza a Folytatás elemet.

    iOS kiépítési portál – új azonosító regisztrálása oldal

  3. Frissítse a következő három értéket az új alkalmazáshoz, majd válassza a Folytatás lehetőséget:

    • Leírás: Adjon meg egy leíró nevet az alkalmazásnak.

    • Csomagazonosító: Adja meg a Szervezeti azonosító.Terméknév űrlap csomagazonosítóját az alkalmazásterjesztési útmutatóban leírtak szerint. A Szervezetazonosító és a Terméknév értéknek meg kell egyeznie az Xcode-projekt létrehozásakor használt szervezeti azonosítóval és terméknévvel. Az alábbi képernyőképen a NotificationHubs értéket használja a rendszer szervezeti azonosítóként, a GetStarted értéket pedig a terméknévként. Győződjön meg arról, hogy a Csomagazonosító érték megegyezik az Xcode-projektben lévő értékkel, hogy az Xcode a megfelelő közzétételi profilt használja.

      iOS Provisioning Portal – Alkalmazásazonosító regisztrálása oldal

    • Leküldéses értesítések: Ellenőrizze a Leküldéses értesítések lehetőséget a Képességek szakaszban.

      Regisztrációs űrlap új alkalmazásazonosítókhoz

      Ez a művelet létrehozza az alkalmazásazonosítót, és kéri, hogy erősítse meg az információkat. Válassza a Folytatás, majd a Regisztráció lehetőséget az új alkalmazásazonosító megerősítéséhez.

      Új alkalmazásazonosító megerősítése

      Miután kiválasztotta a Regisztráció lehetőséget, az új alkalmazásazonosító sorelemként jelenik meg a Tanúsítványok, azonosítók & Profilok lapon.

  4. A Tanúsítványok, azonosítók & Profilok lapon, az Azonosítók területen keresse meg az imént létrehozott Alkalmazásazonosító sorelemet, és válassza ki annak sorát az Alkalmazásazonosító konfigurációjának szerkesztése képernyő megjelenítéséhez.

Tanúsítvány létrehozása a Notification Hubshoz

Tanúsítványra van szükség ahhoz, hogy az értesítési központ működjön az APNS-sel. Ezt kétféleképpen teheti meg:

  1. Hozzon létre egy .p12 fájlt, amely közvetlenül feltölthető a Notification Hubra.
  2. Hozzon létre egy .p8-t , amely tokenalapú hitelesítéshez használható (az újabb módszer).

Az újabb megközelítés számos előnnyel rendelkezik (a tanúsítványok használatához képest) az APNS tokenalapú (HTTP/2) hitelesítésében dokumentált módon. Mindkét megközelítés esetében azonban már rendelkeztek lépésekkel.

1. LEHETŐSÉG: .p12 leküldéses tanúsítvány létrehozása, amely közvetlenül feltölthető a Notification Hubra

  1. Görgessen le a leküldéses értesítések jelölőnégyzethez, majd válassza a Konfigurálás lehetőséget a tanúsítvány létrehozásához.

    Alkalmazásazonosítói oldal szerkesztése

  2. Megjelenik az Apple Push Notification szolgáltatás SSL-tanúsítványai ablaka. Válassza a Tanúsítvány létrehozása gombot a Fejlesztés SSL-tanúsítvány szakaszában.

    Tanúsítvány létrehozása az alkalmazásazonosító gomb

    Megjelenik az Új tanúsítvány létrehozása képernyő.

    Megjegyzés

    Ez az oktatóprogram fejlesztési tanúsítványt használ. Ugyanez a folyamat használatos a termelési tanúsítvány regisztrálásához is. Csak arra ügyeljen, hogy ugyanazt a tanúsítványtípust használja az értesítések küldéséhez.

  3. Válassza a Fájl kiválasztása lehetőséget, keresse meg azt a helyet, ahová az első feladatból mentette a CSR-fájlt, majd kattintson duplán a tanúsítvány nevére a betöltéséhez. Ezután válassza a Folytatás elemet.

  4. Miután a portál létrehozta a tanúsítványt, válassza a Letöltés gombot. Mentse a tanúsítványt, és jegyezze meg a mentés helyét.

    Előállított tanúsítványok letöltési oldala

    A rendszer letölti és menti a tanúsítványt a számítógépre a Letöltések mappában.

    A tanúsítványfájl megkeresése a Letöltések mappában

    Megjegyzés

    Alapértelmezés szerint a letöltött fejlesztési tanúsítvány neve aps_development.cer.

  5. Kattintson duplán a letöltött aps_development.cer leküldéses tanúsítványra. Ez a művelet telepíti az új tanúsítványt a kulcsláncba, ahogy az alábbi képen látható:

    Új tanúsítvány a Kulcskarika-elérés tanúsítványlistájában

    Megjegyzés

    Bár a tanúsítványban szereplő név eltérő lehet, a név az Apple Development iOS Push Services előtaggal lesz ellátva.

  6. A kulcslánc-hozzáférési oldalon kattintson a jobb egérgombbal az új leküldéses tanúsítványra, melyet a Certificates (Tanúsítványok) kategóriában létrehozott. Válassza az Exportálás lehetőséget, nevezze el a fájlt, válassza a .p12 formátumot, majd válassza a Mentés lehetőséget.

    Tanúsítványok exportálása p12 formátumban

    Dönthet úgy, hogy jelszóval védi a tanúsítványt, de ez nem kötelező. Ha meg szeretné kerülni a jelszó létrehozását, kattintson az OK gombra . Jegyezze fel az exportált .p12 tanúsítvány nevét és helyét. Ezek az APN-ekkel történő hitelesítés engedélyezésére szolgálnak.

    Megjegyzés

    A .p12 fájl neve és helye eltérhet az oktatóanyagban láthatótól.

2. LEHETŐSÉG: Jogkivonatalapú hitelesítéshez használható .p8-tanúsítvány létrehozása

  1. Jegyezze fel a következő adatokat:

    • Alkalmazásazonosító előtagja (ez egy csapatazonosító)
    • Csomagazonosító
  2. A Tanúsítványok, azonosítók & profilok területen kattintson a Kulcsok elemre.

    Megjegyzés

    Ha már rendelkezik az APNS-hez konfigurált kulccsal, használhatja újra a létrehozása után letöltött .p8 tanúsítványt. Ha igen, figyelmen kívül hagyhatja a 35. lépést.

  3. Új kulcs létrehozásához kattintson a + gombra (vagy a Kulcs létrehozása gombra).

  4. Adjon meg egy megfelelő Kulcsnév értéket, majd jelölje be az Apple Push Notifications szolgáltatás (APNs) beállítását, majd kattintson a Folytatás gombra, majd a következő képernyőn a Regisztrálás elemre.

  5. Kattintson a Letöltés gombra, majd helyezze át a .p8 fájlt ( AuthKey_ előtaggal) egy biztonságos helyi könyvtárba, majd kattintson a Kész gombra.

    Megjegyzés

    Ügyeljen arra, hogy a .p8 fájl biztonságos helyen legyen (és mentsen biztonsági másolatot). A kulcs letöltése után nem tölthető le újra a kiszolgálópéldány eltávolításakor.

  6. A Kulcsok területen kattintson az imént létrehozott kulcsra (vagy egy meglévő kulcsra, ha ezt választotta).

  7. Jegyezze fel a Kulcsazonosító értéket.

  8. Nyissa meg a .p8-tanúsítványt egy tetszőleges alkalmazásban, például a Visual Studio Code-ban , majd jegyezze fel a kulcs értékét. Ez a -----BEGIN PRIVATE KEY----- és -----END PRIVATE KEY----- közötti érték.

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

    Megjegyzés

    Ez az a tokenérték , amelyet később a Notification Hub konfigurálásához fog használni.

A lépések végén a következő információkkal kell rendelkeznie, amelyeket később használhat az Értesítési központ konfigurálása APNs-adatokkal című szakaszban:

  • Csapatazonosító (lásd az 1. lépést)
  • Csomagazonosító (lásd az 1. lépést)
  • Kulcsazonosító (lásd a 7. lépést)
  • Tokenérték , azaz .p8 kulcsérték (lásd a 8. lépést)

Üzembe helyezési profil létrehozása az alkalmazáshoz

  1. Térjen vissza az iOS kiépítési portálra, válassza a Tanúsítványok, azonosítók & Profilok lehetőséget, a bal oldali menüben válassza a Profilok lehetőséget, majd válassza az + új profil létrehozásához lehetőséget. Megjelenik az Új kiépítési profil regisztrálása képernyő.

  2. A kiépítési profil típusaként válassza az iOS-alkalmazásfejlesztés lehetőséget a Fejlesztés területen, majd válassza a Folytatás lehetőséget.

    Üzembehelyezési profillista

  3. Ezután válassza ki a létrehozott alkalmazásazonosítót az Alkalmazásazonosító legördülő listából, majd válassza a Folytatás lehetőséget.

    Az alkalmazásazonosító kiválasztása

  4. A Tanúsítványok kiválasztása ablakban válassza ki a kódaláíráshoz használt fejlesztési tanúsítványt, majd válassza a Folytatás lehetőséget. Ez a tanúsítvány nem a létrehozott leküldéses tanúsítvány. Ha nem létezik, létre kell hoznia. Ha létezik tanúsítvány, ugorjon a következő lépésre. Fejlesztési tanúsítvány létrehozása, ha nem létezik:

    1. Ha a Nem érhetők el tanúsítványok elemet látja, válassza a Tanúsítvány létrehozása lehetőséget.
    2. A Szoftver szakaszban válassza az Apple Development (Apple-fejlesztés) lehetőséget. Ezután válassza a Folytatás elemet.
    3. Az Új tanúsítvány létrehozása képernyőn válassza a Fájl kiválasztása lehetőséget.
    4. Keresse meg a korábban létrehozott Tanúsítvány-aláírási kérelem tanúsítványt, jelölje ki, majd válassza a Megnyitás lehetőséget.
    5. Válassza a Folytatás lehetőséget.
    6. Töltse le a fejlesztési tanúsítványt, és jegyezze meg a mentés helyét.
  5. Térjen vissza a Tanúsítványok, azonosítók & Profilok lapra, válassza a bal oldali menü Profilok elemét, majd válassza a lehetőséget + egy új profil létrehozásához. Megjelenik az Új kiépítési profil regisztrálása képernyő.

  6. A Tanúsítványok kiválasztása ablakban válassza ki az imént létrehozott fejlesztési tanúsítványt. Ezután válassza a Folytatás elemet.

  7. Ezután válassza ki a teszteléshez használni kívánt eszközöket, majd válassza a Folytatás lehetőséget.

  8. Végül válassza ki a profil nevét a Kiépítési profil neve területen, majd válassza a Létrehozás lehetőséget.

    Egy üzembehelyezési profilnév kiválasztása

  9. Az új kiépítési profil létrehozásakor válassza a Letöltés lehetőséget. Jegyezze meg a mentés helyét.

  10. Tallózással keresse meg a kiépítési profil helyét, majd kattintson rá duplán az Xcode fejlesztői gépen való telepítéséhez.

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

Ebben a szakaszban egy értesítési központot hoz létre, és a .p12 leküldéses tanúsítvány vagy jogkivonat-alapú hitelesítés használatával konfigurálja az APN-ekkel történő hitelesítést. Ha már létrehozott értesítési központot szeretne használni, ugorjon az 5. lépésre.

  1. Jelentkezzen be az Azure Portalra.

  2. A bal oldali menüben válassza a Minden szolgáltatás lehetőséget, majd a Mobil szakaszban válassza a Notification Hubs elemet. A szolgáltatásnév melletti star ikont választva adja hozzá a szolgáltatást a bal oldali menü KEDVENCEK szakaszához. Miután hozzáadta a Notification Hubsot a KEDVENCEKHEZ, válassza ki a bal oldali menüben.

    Azure Portal – válassza a Notification Hubs lehetőséget

  3. A Notification Hubs lapon válassza az eszköztár Hozzáadás elemét.

    Notification Hubs – Eszköztár hozzáadása gomb

  4. Az Értesítési központ lapon hajtsa végre a következő lépéseket:

    1. Adjon meg egy nevet a Notification Hubban.

    2. Adjon meg egy nevet az Új névtér létrehozása területen. A névtér egy vagy több központot tartalmaz.

    3. Válasszon ki 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.

    4. Válasszon ki egy meglévő erőforráscsoportot az Erőforráscsoport területen, vagy hozzon létre egy nevet egy új erőforráscsoportnak.

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

      Azure Portal – értesítési központ tulajdonságainak megadása

  5. Válassza az Értesítések (a harang ikon), majd az Erőforrás megnyitása lehetőséget. A listát a Notification Hubs oldalon is frissítheti, és kiválaszthatja a központot.

    Azure Portal – értesítések –> Ugrás az erőforrásra

  6. A listáról válassza a Hozzáférési szabályzatok lehetőséget. Vegye figyelembe, hogy a két kapcsolati sztring elérhető. Később szüksége lesz rájuk a leküldéses értesítések kezeléséhez.

    Fontos

    Ne használja a DefaultFullSharedAccessSignature szabályzatot az alkalmazásban. Ez csak a háttérrendszerben használható.

    Azure Portal – értesítési központ kapcsolati sztringjei

Az értesítési központ konfigurálása APN-adatokkal

A Notification Services (Értesítési szolgáltatások) területen válassza az Apple (APNS) lehetőséget, majd kövesse a megfelelő lépéseket a Korábban a Tanúsítvány létrehozása a Notification Hubshoz szakaszban kiválasztott módszer alapján.

Megjegyzés

Csak akkor használja az Alkalmazáshoz készült élesüzemmódot , ha leküldéses értesítéseket szeretne küldeni azoknak a felhasználóknak, akik az alkalmazást az áruházból vásárolták.

1. LEHETŐSÉG: .p12 leküldéses tanúsítvány használata

  1. Válassza a Tanúsítvány elemet.

  2. Válassza a fájl ikont.

  3. Jelölje ki a korábban exportált .p12 fájlt, majd válassza a Megnyitás lehetőséget.

  4. Ha szükséges, adja meg a megfelelő jelszót.

  5. Válassza a Védőfal módot.

    APN-tanúsítvány konfigurálása a Azure Portal

  6. Kattintson a Mentés gombra.

2. LEHETŐSÉG: Jogkivonatalapú hitelesítés használata

  1. Válassza a Jogkivonat lehetőséget.

  2. Adja meg a korábban beszerzett alábbi értékeket:

    • Kulcsazonosító
    • Csomagazonosító
    • Csapatazonosító
    • Jogkivonat
  3. Tesztkörnyezet kiválasztása

  4. Kattintson a Mentés gombra.

Most már apN-ekkel konfigurálta az értesítési központot. Rendelkezik az alkalmazás regisztrálásához és leküldéses értesítések küldéséhez szükséges kapcsolati sztringekkel is.

Az értesítési központ konfigurálása az APNS-hez

  1. Mac gépen indítsa el a Keychain Accesst. A bal oldali navigációs sáv Kategória területén nyissa meg a Saját tanúsítványok elemet. Keresse meg az előző szakaszban letöltött SSL-tanúsítványt, majd tegye közzé a tartalmát. Csak a tanúsítványt jelölje ki (ne válassza ki a titkos kulcsot). Ezután exportálja.
  2. A Azure Portal válassza a Browse AllApp Services (Minden > App Services tallózása) lehetőséget. Ezután válassza ki a Mobile Apps háttérrendszerét.
  3. A Beállítások területen válassza App Service Leküldés lehetőséget. Ezután válassza ki az értesítési központ nevét.
  4. Lépjen az Apple Leküldéses értesítési szolgáltatások>tanúsítvány feltöltése területre. Töltse fel a .p12 fájlt, és válassza ki a megfelelő módot (attól függően, hogy a korábbi ügyfél SSL-tanúsítványa éles vagy tesztkörnyezeti). Mentse a módosításokat.

A szolgáltatás mostantól úgy van konfigurálva, hogy leküldéses értesítéseket használjon iOS rendszeren.

Ezután konfigurálja az iOS-projektbeállítást a Xamarin Studióban vagy a Visual Studióban.

Az iOS-projekt konfigurálása a Xamarin Studióban

  1. A Xamarin.Studióban nyissa meg az Info.plist fájlt, és frissítse a csomagazonosítót az új alkalmazásazonosítóval korábban létrehozott csomagazonosítóval.

  2. Görgessen le a Háttérmódok gombra. Válassza a Háttérmódok engedélyezése és a Távoli értesítések jelölőnégyzetet .

  3. Kattintson duplán a projektre a Megoldás panelen a Projektbeállítások megnyitásához.

  4. A Build területen válassza az iOS-csomagaláírás lehetőséget, majd válassza ki a projekthez beállított identitást és kiépítési profilt.

    Ez biztosítja, hogy a projekt az új profilt használja a kódaláíráshoz. A hivatalos Xamarin-eszközkiépítési dokumentációért lásd: Xamarin-eszközök kiépítése.

Az iOS-projekt konfigurálása a Visual Studióban

  1. A Visual Studióban kattintson a jobb gombbal a projektre, majd kattintson a Tulajdonságok parancsra.

  2. A tulajdonságok lapján kattintson az iOS-alkalmazás fülre, és frissítse az azonosítót a korábban létrehozott azonosítóval.

  3. Az iOS-csomagaláírás lapon válassza ki a projekthez beállított identitás- és kiépítési profilt.

    Ez biztosítja, hogy a projekt az új profilt használja a kódaláíráshoz. A hivatalos Xamarin-eszközkiépítési dokumentációért lásd: Xamarin-eszközök kiépítése.

  4. Kattintson duplán az Info.plist elemre a megnyitásához, majd engedélyezze a RemoteNotifications (RemoteNotifications) beállítást a Háttérmódok területen.

Leküldéses értesítések hozzáadása az iOS-alkalmazáshoz

  1. Az iOS-projektben nyissa meg az AppDelegate.cs fájlt, és adja hozzá a következő utasítást a kódfájl tetejére.

    using Newtonsoft.Json.Linq;
    
  2. Az AppDelegate osztályban adjon hozzá egy felülbírálást a RegisteredForRemoteNotifications eseményhez az értesítések regisztrálásához:

    public override void RegisteredForRemoteNotifications(UIApplication application,
        NSData deviceToken)
    {
        const string templateBodyAPNS = "{\"aps\":{\"alert\":\"$(messageParam)\"}}";
    
        JObject templates = new JObject();
        templates["genericMessage"] = new JObject
            {
                {"body", templateBodyAPNS}
            };
    
        // Register for push with your mobile app
        Push push = TodoItemManager.DefaultManager.CurrentClient.GetPush();
        push.RegisterAsync(deviceToken, templates);
    }
    
  3. Az AppDelegate-ben adja hozzá a DidReceiveRemoteNotification eseménykezelő következő felülbírálását is:

    public override void DidReceiveRemoteNotification(UIApplication application,
        NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler)
    {
        NSDictionary aps = userInfo.ObjectForKey(new NSString("aps")) as NSDictionary;
    
        string alert = string.Empty;
        if (aps.ContainsKey(new NSString("alert")))
            alert = (aps[new NSString("alert")] as NSString).ToString();
    
        //show alert
        if (!string.IsNullOrEmpty(alert))
        {
            UIAlertView avAlert = new UIAlertView("Notification", alert, null, "OK", null);
            avAlert.Show();
        }
    }
    

    Ez a metódus kezeli a bejövő értesítéseket, miközben az alkalmazás fut.

  4. Az AppDelegate osztályban adja hozzá a következő kódot a FinishedLaunching metódushoz:

    // Register for push notifications.
    var settings = UIUserNotificationSettings.GetSettingsForTypes(
        UIUserNotificationType.Alert
        | UIUserNotificationType.Badge
        | UIUserNotificationType.Sound,
        new NSSet());
    
    UIApplication.SharedApplication.RegisterUserNotificationSettings(settings);
    UIApplication.SharedApplication.RegisterForRemoteNotifications();
    

    Ez lehetővé teszi a távoli értesítések és kérések leküldéses regisztrációjának támogatását.

Az alkalmazás most frissült, hogy támogassa a leküldéses értesítéseket.

Leküldéses értesítések tesztelése az iOS-alkalmazásban

  1. Kattintson a jobb gombbal az iOS-projektre, majd kattintson a Beállítás StartUp Projektként parancsra.

  2. A Projekt létrehozásához és az alkalmazás iOS-eszközön való elindításához nyomja le a Futtatás gombot vagy az F5 billentyűt a Visual Studióban. Ezután kattintson az OK gombra a leküldéses értesítések elfogadásához.

    Megjegyzés

    Kifejezetten el kell fogadnia a leküldéses értesítéseket az alkalmazásból. Ez a kérés csak az alkalmazás első futtatásakor fordul elő.

  3. Az alkalmazásban írjon be egy feladatot, majd kattintson a plusz (+) ikonra.

  4. Ellenőrizze, hogy érkezett-e értesítés, majd kattintson az OK gombra az értesítés bezárásához.

Windows-projektek konfigurálása és futtatása (nem kötelező)

Ez a szakasz a Windows-eszközök Xamarin.Forms WinApp és WinPhone81 projektjeinek futtatására vonatkozik. Ezek a lépések Univerzális Windows-platform (UWP) projekteket is támogatnak. Kihagyhatja ezt a részt, ha nem dolgozik Windows-eszközökkel.

Windows-alkalmazás regisztrálása leküldéses értesítésekhez a Windows Értesítési szolgáltatásban (WNS)

  1. A Visual Studio Megoldáskezelő kattintson a jobb gombbal a Windows Áruházbeli alkalmazásprojektre. Ezután válassza az Áruház>alkalmazás társítása az Áruházhoz lehetőséget.

    Alkalmazás társítása a Windows Áruházzal

  2. A varázslóban válassza a Tovább gombot. Ezután jelentkezzen be a Microsoft-fiókjával. Az Új alkalmazás nevének lefoglalása mezőbe írja be az alkalmazás nevét, majd válassza a Foglalás lehetőséget.

  3. Az alkalmazásregisztráció sikeres létrehozása után válassza ki az új alkalmazásnevet. Válassza a Tovább, majd a Társítás lehetőséget. Ez a folyamat hozzáadja a szükséges Windows Áruházbeli regisztrációs adatokat az alkalmazásjegyzékhez.

  4. Ismételje meg az 1. és a 3. lépést a Windows Phone-telefon Áruházbeli alkalmazásprojekthez a Windows Áruházbeli alkalmazáshoz korábban létrehozott regisztrációval.

  5. Nyissa meg a Windows fejlesztői központot, majd jelentkezzen be a Microsoft-fiókjával. A Saját alkalmazások területen válassza ki az új alkalmazásregisztrációt. Ezután bontsa ki a Szolgáltatások>leküldéses értesítései elemet.

  6. A Leküldéses értesítések lapon a Windows Leküldéses értesítési szolgáltatások (WNS) és a Microsoft Azure Mobile Apps területen válassza Live Services webhelyet. Jegyezze fel a Package SID értékeit és az application secretaktuális értékét.

    Alkalmazásbeállítás a fejlesztői központban

    Fontos

    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 ossza meg őket az alkalmazással.

Az értesítési központ konfigurálása a WNS-hez

  1. A Azure Portal válassza a Browse AllApp Services (Minden > App Services tallózása) lehetőséget. Ezután válassza ki a Mobile Apps háttérrendszerét. A Beállítások területen válassza App Service Leküldés lehetőséget. Ezután válassza ki az értesítési központ nevét.

  2. Lépjen a Windows (WNS) elemre. Ezután adja meg a biztonsági kulcsot (titkos ügyfélkulcsot) és a csomagazonosítót, amelyet a Live Services helyről szerzett be. Ezután válassza a Mentés lehetőséget.

    A WNS-kulcs beállítása a portálon

A háttérrendszer most már úgy van konfigurálva, hogy a WNS használatával küldjön leküldéses értesítéseket.

Leküldéses értesítések hozzáadása a Windows-alkalmazáshoz

  1. A Visual Studióban nyissa meg az App.xaml.cs fájlt egy Windows-projektben, és adja hozzá az alábbi utasításokat.

    using Newtonsoft.Json.Linq;
    using Microsoft.WindowsAzure.MobileServices;
    using System.Threading.Tasks;
    using Windows.Networking.PushNotifications;
    using <your_TodoItemManager_portable_class_namespace>;
    

    Cserélje le <your_TodoItemManager_portable_class_namespace> a elemet a osztályt tartalmazó hordozható projekt névterére TodoItemManager .

  2. Az App.xaml.cs fájlban adja hozzá a következő InitNotificationsAsync metódust :

    private async Task InitNotificationsAsync()
    {
        var channel = await PushNotificationChannelManager
            .CreatePushNotificationChannelForApplicationAsync();
    
        const string templateBodyWNS =
            "<toast><visual><binding template=\"ToastText01\"><text id=\"1\">$(messageParam)</text></binding></visual></toast>";
    
        JObject headers = new JObject();
        headers["X-WNS-Type"] = "wns/toast";
    
        JObject templates = new JObject();
        templates["genericMessage"] = new JObject
        {
            {"body", templateBodyWNS},
            {"headers", headers} // Needed for WNS.
        };
    
        await TodoItemManager.DefaultManager.CurrentClient.GetPush()
            .RegisterAsync(channel.Uri, templates);
    }
    

    Ez a módszer lekéri a leküldéses értesítési csatornát, és regisztrál egy sablont, amely sablonértesítéseket fogad az értesítési központtól. A rendszer egy üzenetparamot támogató sablonértesítést küld az ügyfélnek.

  3. Az App.xaml.cs fájlban frissítse az OnLaunched eseménykezelő metódusdefinícióját a async módosító hozzáadásával. Ezután adja hozzá a következő kódsort a metódus végén:

    await InitNotificationsAsync();
    

    Ez biztosítja, hogy a leküldéses értesítés regisztrációja az alkalmazás minden indításakor létrejön vagy frissüljön. Fontos, hogy ez garantálja, hogy a WNS leküldéses csatorna mindig aktív legyen.

  4. A Visual Studio Megoldáskezelő nyissa meg a Package.appxmanifest fájlt, és állítsa a Toast Capable (Igen) értéket azÉrtesítések területen.

  5. Hozza létre az alkalmazást, és ellenőrizze, hogy nincsenek-e hibák. Az ügyfélalkalmazásnak most regisztrálnia kell a sablonértesítésekhez a Mobile Apps háttérrendszerében. Ismételje meg ezt a szakaszt a megoldás minden Windows-projektjéhez.

Leküldéses értesítések tesztelése a Windows-alkalmazásban

  1. A Visual Studióban kattintson a jobb gombbal egy Windows-projektre, majd kattintson a Beállítás indítási projektként parancsra.
  2. Nyomja le a Run (Futtatás) gombot a projekt felépítéséhez és az alkalmazás elindításához.
  3. Az alkalmazásban írja be egy új todoitem nevét, majd a plusz (+) ikonra kattintva adja hozzá.
  4. Győződjön meg arról, hogy az elem hozzáadásakor értesítés érkezik.

Következő lépések

További információ a leküldéses értesítésekről:

A következő oktatóanyagok egyikét is folytathatja: