Zelfstudie: Pushmeldingen verzenden naar Windows Phone-apps met Azure Notification HubsTutorial: Push notifications to Windows Phone apps by using Azure Notification Hubs

In deze zelfstudie ziet u hoe u met Azure Notification Hubs pushmeldingen verzendt naar Silverlight-toepassingen van Windows Phone 8 of Windows Phone 8.1.This tutorial shows you how to use Azure Notification Hubs to send push notifications to a Windows Phone 8 or Windows Phone 8.1 Silverlight applications. Als u ontwikkelt voor Windows Phone 8.1 (zonder Silverlight), raadpleegt u de Windows Universal-versie van deze zelfstudie.If you are targeting Windows Phone 8.1 (non-Silverlight), see the Windows Universal version of this tutorial.

In deze zelfstudie maakt u een lege Windows Phone 8-app die pushmeldingen ontvangt via Microsoft Push Notification Service (MPNS).In this tutorial, you create a blank Windows Phone 8 app that receives push notifications by using the Microsoft Push Notification Service (MPNS). Als u de app hebt gemaakt, kunt u de Notification Hub gebruiken om pushmeldingen uit te zenden naar alle apparaten waarop uw app wordt uitgevoerd.After you create the app, you use your notification hub to broadcast push notifications to all the devices running your app.

Notitie

De Notification Hubs Windows Phone SDK biedt geen ondersteuning voor het gebruik van Windows Push Notification Service (WNS) met Windows Phone 8.1 Silverlight-apps.The Notification Hubs Windows Phone SDK does not support using the Windows Push Notification Service (WNS) with Windows Phone 8.1 Silverlight apps. Als u WNS (in plaats van MPNS) met Windows Phone 8.1 Silverlight-apps wilt gebruiken, raadpleegt u de Notification Hubs - Windows Phone Silverlight-zelfstudie waarin REST API's worden gebruikt.To use WNS (instead of MPNS) with Windows Phone 8.1 Silverlight apps, follow the Notification Hubs - Windows Phone Silverlight tutorial, which uses REST APIs.

In deze zelfstudie leert u het volgende:In this tutorial, you learn how to:

  • Een Notification Hub makenCreate a notification hub
  • Een Windows Phone-toepassing makenCreate a Windows Phone application
  • Een testmelding verzendenTest send a notification

VereistenPrerequisites

Het voltooien van deze zelfstudie is een vereiste voor alle andere Notification Hubs-zelfstudies voor Windows Phone 8-apps.Completing this tutorial is a prerequisite for all other Notification Hubs tutorials for Windows Phone 8 apps.

Een Notification Hub makenCreate your notification hub

  1. Meld u aan bij Azure Portal.Sign in to the Azure portal.

  2. Selecteer alle services op het menu aan de linkerkant en selecteer vervolgens Notification Hubs in de Mobile sectie.Select All services on the left menu, and then select Notification Hubs in the Mobile section. Selecteer het sterpictogram naast de naam van de service toe te voegen van de service de Favorieten sectie in het menu links.Select the star icon next to the service name to add the service to the FAVORITES section on the left menu. Nadat u hebt toegevoegd Notification Hubs naar Favorieten, selecteert u deze in het menu links.After you add Notification Hubs to FAVORITES, select it on the left menu.

    Azure Portal - Notification Hubs selecteren

  3. Op de Notification Hubs-pagina selecteert u Toevoegen op de werkbalk.On the Notification Hubs page, select Add on the toolbar.

    Toevoegen van Notification Hubs - knop op de werkbalk

  4. Voer op de pagina Notification Hub de volgende stappen uit:On the Notification Hub page, do the following steps:

    1. Voer een naam in Notification Hub.Enter a name in Notification Hub.

    2. Voer een naam in maken van een nieuwe naamruimte.Enter a name in Create a new namespace. Een naamruimte bevat een of meer hubs.A namespace contains one or more hubs.

    3. Selecteer een waarde van de locatie vervolgkeuzelijst met box.Select a value from the Location drop-down list box. Deze waarde geeft de locatie waarin u wilt maken van de hub.This value specifies the location in which you want to create the hub.

    4. Selecteer een bestaande resourcegroep in resourcegroep, of een naam voor een nieuwe resourcegroep maken.Select an existing resource group in Resource Group, or create a name for a new resource group.

    5. Selecteer Maken.Select Create.

      Azure Portal - eigenschappen van de Notification Hub instellen

  5. Selecteer meldingen (het belpictogram), en selecteer vervolgens naar de resource gaan.Select Notifications (the bell icon), and then select Go to resource. U kunt ook de lijst vernieuwen op de Notification Hubs pagina en selecteer uw hub.You can also refresh the list on the Notification Hubs page and select your hub.

    Azure Portal - Meldingen -> Naar de resource gaan

  6. Selecteer Toegangsbeleid in de lijst.Select Access Policies from the list. Houd er rekening mee dat de twee verbindingsreeksen voor u beschikbaar zijn.Note that the two connection strings are available to you. U moet ze later voor het afhandelen van pushmeldingen.You'll need them later to handle push notifications.

    Belangrijk

    Voer niet gebruiken de DefaultFullSharedAccessSignature beleid in uw toepassing.Do not use the DefaultFullSharedAccessSignature policy in your application. Dit is bedoeld om te worden gebruikt in uw back-end alleen.This is meant to be used in your back end only.

    Azure Portal - verbindingsreeksen voor de Notification Hub

Windows Phone-instellingen (MPNS) configurerenConfigure Windows Phone (MPNS) settings

  1. Selecteer Windows Phone (MPNS) onder MELDINGSINSTELLINGEN.Select Windows Phone (MPNS) under NOTIFICATION SETTINGS.

  2. Selecteer Verificatiepush inschakelen.Select Enable authentication push.

  3. Selecteer Opslaan op de werkbalk.Select Save on the toolbar.

    Azure Portal - Niet-geverifieerde pushmeldingen inschakelen

    De hub is nu gemaakt en geconfigureerd om niet-geverifieerde meldingen voor Windows Phone te verzenden.Your hub is now created and configured to send unauthenticated notification for Windows Phone.

    Notitie

    In deze zelfstudie wordt MPNS in niet-geverifieerde modus gebruikt.This tutorial uses MPNS in unauthenticated mode. Bij de niet-geverifieerde MPNS-modus gelden beperkingen voor meldingen die u naar elk kanaal kunt verzenden.MPNS unauthenticated mode comes with restrictions on notifications that you can send to each channel. Notification Hubs ondersteunt de geverifieerde MPNS-modus doordat u uw certificaat kunt uploaden.Notification Hubs supports MPNS authenticated mode by allowing you to upload your certificate.

Een Windows Phone-toepassing makenCreate a Windows Phone application

In deze sectie maakt u een Windows Phone-toepassing die zichzelf bij uw Notification Hub registreert.In this section, you create a Windows Phone application that registers itself with your notification hub.

  1. Maak een nieuwe Windows Phone 8-toepassing in Visual Studio.In Visual Studio, create a new Windows Phone 8 application.

    Visual Studio - Nieuw project - Windows Phone-app

    In Visual Studio 2013 Update 2 of hoger maakt u daarentegen een Windows Phone Silverlight-toepassing.In Visual Studio 2013 Update 2 or later, you instead create a Windows Phone Silverlight application.

    Visual Studio - Nieuw project - Lege app - Windows Phone Silverlight

  2. Klik met de rechtermuisknop op de oplossing in Visual Studio en klik vervolgens op NuGet-pakketten beheren.In Visual Studio, right-click the solution, and then click Manage NuGet Packages.

  3. Zoek WindowsAzure.Messaging.Managed en klik op Installeren. Accepteer vervolgens de gebruiksvoorwaarden.Search for WindowsAzure.Messaging.Managed and click Install, and then accept the terms of use.

    Visual Studio - NuGet Package Manager

  4. Open het bestand App.xaml.cs en voeg de volgende using-instructies toe:Open the file App.xaml.cs and add the following using statements:

     using Microsoft.Phone.Notification;
     using Microsoft.WindowsAzure.Messaging;
    
  5. Voeg de volgende code toe bovenaan methode Application_Launching in App.xaml.cs:Add the following code at the top of Application_Launching method in App.xaml.cs:

    private void Application_Launching(object sender, LaunchingEventArgs e)
    {
    
        var channel = HttpNotificationChannel.Find("MyPushChannel");
        if (channel == null)
        {
            channel = new HttpNotificationChannel("MyPushChannel");
            channel.Open();
            channel.BindToShellToast();
        }
    
        channel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(async (o, args) =>
        {
            var hub = new NotificationHub("<hub name>", "<connection string>");
            var result = await hub.RegisterNativeAsync(args.ChannelUri.ToString());
    
            System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
                MessageBox.Show("Registration :" + result.RegistrationId, "Registered", MessageBoxButton.OK);
            });
        });
    }
    

    Notitie

    De waarde MyPushChannel is een index die wordt gebruikt om een bestaand kanaal te zoeken in de collectie HttpNotificationChannel.The value MyPushChannel is an index that is used to lookup an existing channel in the HttpNotificationChannel collection. Als het kanaal niet wordt gevonden, maakt u een nieuwe vermelding met die naam.If there isn't one there, create a new entry with that name.

    Voeg de naam van uw hub in en de verbindingsreeks met de naam DefaultListenSharedAccessSignature die u in de voorgaande sectie hebt genoteerd.Insert the name of your hub and the connection string called DefaultListenSharedAccessSignature that you noted in the previous section. Met deze code wordt de kanaal-URI voor de app opgehaald uit MPNS en wordt vervolgens die kanaal-URI voor uw Notification Hub geregistreerd.This code retrieves the channel URI for the app from MPNS, and then registers that channel URI with your notification hub. Ook wordt hiermee gegarandeerd dat de kanaal-URI in uw Notification Hub wordt geregistreerd telkens wanneer de toepassing wordt gestart.It also guarantees that the channel URI is registered in your notification hub each time the application is launched.

    Notitie

    In deze zelfstudie wordt een pop-upmelding naar het apparaat verzonden.This tutorial sends a toast notification to the device. Wanneer u een tegelmelding verzendt, moet u in plaats daarvan de methode BindToShellTile voor het kanaal aanroepen.When you send a tile notification, you must instead call the BindToShellTile method on the channel. Voor ondersteuning van zowel pop-up- als tegelmeldingen roept u zowel BindToShellTile als BindToShellToast aan.To support both toast and tile notifications, call both BindToShellTile and BindToShellToast.

  6. Vouw in Solution Explorer Eigenschappen uit, open het bestand WMAppManifest.xml, klik op het tabblad Mogelijkheden en zorg ervoor dat de mogelijkheid ID_CAP_PUSH_NOTIFICATION is ingeschakeld.In Solution Explorer, expand Properties, open the WMAppManifest.xml file, click the Capabilities tab, and make sure that the ID_CAP_PUSH_NOTIFICATION capability is checked. Uw app kan nu pushmeldingen ontvangen.Your app can receive push notifications now.

    Visual Studio - Windows Phone-app-mogelijkheden

  7. Druk op de toets F5 om de app uit te voeren.Press the F5 key to run the app. Er wordt een registratiebericht in de app weergegeven.A registration message is displayed in the app.

  8. Sluit de app of ga naar de startpagina.Close the app or switch to the home page.

    Notitie

    Als u een pop-upmelding wilt ontvangen, moet de toepassing niet worden uitgevoerd op de voorgrond.To receive a toast push notification, the application must not be running in the foreground.

Een testmelding verzendenTest send a notification

  1. Ga in Azure Portal naar het tabblad Overzicht.In the Azure portal, switch to the Overview tab.

  2. Selecteer Verzenden testen.Select Test Send.

    Knop Verzenden testen

  3. Voer in het venster Verzenden testen de volgende stappen uit:In the Test Send window, take the following steps:

    1. Selecteer Windows Phone bij Platforms.For Platforms, select Windows Phone.

    2. Selecteer Pop-up bij Meldingstype.For Notification Type, select Toast.

    3. Selecteer VerzendenSelect Send

    4. Bekijk het resultaat in de lijst onderaan het venster.See the result in the list at the bottom of the window.

      Het venster Verzenden testen

  4. Controleer in de Windows Phone-emulator of op de Windows-telefoon of u de melding ziet.In the Windows Phone emulator or on the Windows phone, confirm that you see the notification message.

    Melding op Windows-telefoon

Volgende stappenNext steps

In dit eenvoudige voorbeeld hebt u pushmeldingen uitgezonden naar al uw Windows Phone 8-apparaten.In this simple example, you broadcasted push notifications to all your Windows Phone 8 devices. Ga verder met de volgende zelfstudie als u wilt weten hoe u pushmeldingen kunt verzenden naar specifieke apparaten:Advance to the following tutorial to learn how to push notifications to specific devices: