Tutorial: Enviar notificações para aplicações da plataforma Universal do Windows com os Hubs de notificação do AzureTutorial: Send notifications to Universal Windows Platform apps by using Azure Notification Hubs

Neste tutorial, vai criar um hub de notificação para enviar notificações push para uma aplicação da Plataforma Universal do Windows (UWP).In this tutorial, you create a notification hub to send push notifications to a Universal Windows Platform (UWP) app. Vai criar uma aplicação da Loja Windows em branco que recebe notificações push com o Serviço de Notificações Push do Windows (WNS).You create a blank Windows Store app that receives push notifications by using the Windows Push Notification Service (WNS). Em seguida, utilizar o notification hub para difundir notificações push para todos os dispositivos que executem a sua aplicação.Then, you use your notification hub to broadcast push notifications to all devices that are running your app.

Nota

O código concluído deste artigo está disponível no GitHub.You can find the completed code for this tutorial on GitHub.

Siga os passos seguintes:You take the following steps:

  • Criar uma aplicação na Loja WindowsCreate an app in Windows Store
  • Criar um Hub de notificaçãoCreate a Notification Hub
  • Criar uma aplicação do Windows de exemploCreate a sample Windows app
  • Enviar notificações de testeSend test notifications

Pré-requisitosPrerequisites

A conclusão deste tutorial é um pré-requisito para todos os outros tutoriais dos Hubs de Notificação para aplicações do UWP.Completing this tutorial is a prerequisite for all other Notification Hubs tutorials for UWP apps.

Criar uma aplicação na Loja WindowsCreate an app in Windows Store

Para enviar notificações push para aplicações do UWP, associe a aplicação à Loja Windows.To send push notifications to UWP apps, associate your app to the Windows Store. Em seguida, configure o Hub de Notificação para se integrar no WNS.Then, configure your notification hub to integrate with WNS.

  1. Navegue para o Windows Dev Center, inicie sessão com a sua conta Microsoft e selecione Criar uma nova aplicação.Navigate to the Windows Dev Center, sign in with your Microsoft account, and then select Create a new app.

    Botão Nova aplicação

  2. Escreva um nome para a aplicação e selecione Reservar nome do produto.Type a name for your app, and then select Reserve product name. Desta forma, é criado um registo novo da Loja Windows para a sua aplicação.Doing so creates a new Windows Store registration for your app.

    Nome da aplicação na loja

  3. Expanda gestão de aplicações, selecione WNS/MPNSe, em seguida, selecione site dos Serviços Live.Expand App Management, select WNS/MPNS, and then select Live Services site. Inicie sessão com a sua conta Microsoft.Sign in to your Microsoft account. É aberto o Portal de Registo da Aplicação num novo separador. Em alternativa, pode navegar diretamente para o Portal de Registo da Aplicação e selecionar o nome da aplicação para aceder a esta página.The Application Registration Portal opens in a new tab. Alternatively, you can navigate directly to the Application Registration Portal, select your application name to get to this page.

    Página do WNS MPNS

  4. Anote a palavra-passe Segredo da Aplicação e o Identificador de segurança de pacotes (SID) .Note the Application Secret password and the Package security identifier (SID).

    Aviso

    O segredo da aplicação e o SID do pacote são credenciais de segurança importantes.The application secret and package SID are important security credentials. Não partilhe estes valores com ninguém e não os distribua com a aplicação.Do not share these values with anyone or distribute them with your app.

Criar um Hub de notificaçãoCreate a Notification Hub

  1. Inicie sessão no portal do Azure.Sign in to the Azure portal.

  2. Selecione todos os serviços no menu à esquerda e, em seguida, selecione os Hubs de notificação no Mobile secção.Select All services on the left menu, and then select Notification Hubs in the Mobile section. Selecione o ícone de estrela junto ao nome do serviço para adicionar o serviço para o Favoritos secção no menu da esquerda.Select the star icon next to the service name to add the service to the FAVORITES section on the left menu. Depois de adicionar os Hubs de notificação ao Favoritos, selecione-o no menu da esquerda.After you add Notification Hubs to FAVORITES, select it on the left menu.

    Portal do Azure – selecione os Hubs de notificação

  3. Sobre o os Hubs de notificação página, selecione Add na barra de ferramentas.On the Notification Hubs page, select Add on the toolbar.

    Os Hubs de notificação - adicionar botão de barra de ferramentas

  4. Sobre o Hub de notificação página, efetue os seguintes passos:On the Notification Hub page, do the following steps:

    1. Introduza um nome na Hub de notificação.Enter a name in Notification Hub.

    2. Introduza um nome na criar um novo namespace.Enter a name in Create a new namespace. Um espaço de nomes contém um ou mais hubs.A namespace contains one or more hubs.

    3. Selecione um valor de localização caixa de lista pendente.Select a value from the Location drop-down list box. Este valor Especifica a localização na qual pretende criar o hub.This value specifies the location in which you want to create the hub.

    4. Selecione um grupo de recursos existente no grupo de recursos, ou criar um nome para um novo grupo de recursos.Select an existing resource group in Resource Group, or create a name for a new resource group.

    5. Selecione Criar.Select Create.

      Portal do Azure – definir as propriedades do hub de notificação

  5. Selecione notificações (o ícone de sino) e, em seguida, selecione Ir para recurso.Select Notifications (the bell icon), and then select Go to resource. Pode também atualizar a lista a os Hubs de notificação página e selecione o seu hub.You can also refresh the list on the Notification Hubs page and select your hub.

    Portal do Azure - notificações -> Ir para o recurso

  6. Selecione Políticas de Acesso na lista.Select Access Policies from the list. Tenha em atenção que as duas cadeias de ligação estão disponíveis para.Note that the two connection strings are available to you. Irá precisar posteriormente para processar as notificações push.You'll need them later to handle push notifications.

    Importante

    Fazer não utilizar o DefaultFullSharedAccessSignature política na sua aplicação.Do not use the DefaultFullSharedAccessSignature policy in your application. Isso se destina a ser utilizado no seu back-end.This is meant to be used in your back end only.

    Portal do Azure – cadeias de ligação do hub de notificação

Configurar as definições de WNS para o hubConfigure WNS settings for the hub

  1. Na definições de notificação categoria, selecione Windows (WNS) .In the NOTIFICATION SETTINGS category, select Windows (WNS).

  2. Introduza os valores para SID do Pacote e Chave de Segurança que anotou na secção anterior.Enter values for Package SID and Security Key you noted from the previous section.

  3. Clique em Guardar na barra de ferramentas.Click Save on the toolbar.

    Caixas do SID do Pacote e Chave de Segurança

O seu hub de notificação está agora configurado para funcionar com o WNS.Your notification hub is now configured to work with WNS. Tem as cadeias de ligação para registar a sua aplicação e enviar notificações.You have the connection strings to register your app and send notifications.

Criar uma aplicação do Windows de exemploCreate a sample Windows app

  1. No Visual Studio, abra a arquivo menu, selecione Newe, em seguida, selecione projeto.In Visual Studio, open the File menu, select New, and then select Project.

  2. Na novo projeto caixa de diálogo, conclua os seguintes passos:In the New Project dialog, complete the following steps:

    1. Expanda Visual C# .Expand Visual C#.

    2. Selecione Windows Universal.Select Windows Universal.

    3. Selecione Aplicação em branco (Universal Windows) .Select Blank App (Universal Windows).

    4. Introduza um nome para o projeto.Enter a name for the project.

    5. Selecione OK.Select OK.

      Caixa de diálogo Novo Projeto

  3. Aceite as predefinições para as versões de destino e mínimas da plataforma e selecione OK.Accept the defaults for the target and minimum platform versions, and select OK.

  4. No Explorador de Soluções, clique com o botão direito do rato no projeto de aplicação da Loja Windows, selecione Loja e, em seguida, selecione Associar Aplicação à Loja.In Solution Explorer, right-click the Windows Store app project, select Store, and then select Associate App with the Store. É apresentado o assistente Associar aplicação à Loja Windows.The Associate Your App with the Windows Store wizard appears.

  5. No assistente, inicie sessão com a sua conta Microsoft.In the wizard, sign in with your Microsoft account.

  6. Selecione a aplicação que registou no passo 2, selecione Seguinte e, por fim, Associar.Select the app that you registered in step 2, select Next, and then select Associate. Desta forma, é adicionado ao manifesto da aplicação as informações de registo da Loja Windows necessárias.Doing so adds the required Windows Store registration information to the application manifest.

  7. No Visual Studio, clique com o botão direito do rato na solução e, em seguida, Selecione Gerir Pacotes NuGet.In Visual Studio, right-click the solution, and then select Manage NuGet Packages. É aberta a janela Gerir Pacotes NuGet.The Manage NuGet Packages window opens.

  8. Na caixa de pesquisa, introduza WindowsAzure.Messaging.Managed, selecione Instalar e aceite os termos de utilização.In the search box, enter WindowsAzure.Messaging.Managed, select Install, and accept the terms of use.

    Janela Gerir Pacotes NuGet

    Esta ação transfere, instala e adiciona uma referência ao à biblioteca dos Hubs de Notificação do Azure para Windows mediante a utilização do Pacote NuGet Microsoft.Azure.Notification Hubs.This action downloads, installs, and adds a reference to the Azure Notification Hubs library for Windows by using the Microsoft.Azure.NotificationHubs NuGet package.

  9. Abra o App.xaml.cs arquivo do projeto e adicione as seguintes instruções:Open the App.xaml.cs project file, and add the following statements:

    using Windows.Networking.PushNotifications;
    using Microsoft.WindowsAzure.Messaging;
    using Windows.UI.Popups;
    
  10. Do projeto App.xaml.cs do ficheiro, localize o App de classe e adicione o seguinte InitNotificationsAsync definição de método:In the project's App.xaml.cs file, locate the App class, and add the following InitNotificationsAsync method definition:

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

    Este código obtém o URI do canal para a aplicação a partir do WNS e, em seguida, regista esse URI de canal no Notification Hub.This code retrieves the channel URI for the app from WNS, and then registers that channel URI with your notification hub.

    Nota

    Substitua o hub name marcador de posição pelo nome do notification hub que aparece no portal do Azure.Replace the hub name placeholder with the name of the notification hub that appears in the Azure portal. Também substituir o marcador de posição de cadeia de ligação com o DefaultListenSharedAccessSignature cadeia de ligação que obteve na políticas de acesso página do seu hub de notificação numa secção anterior.Also replace the connection string placeholder with the DefaultListenSharedAccessSignature connection string that you obtained from the Access Polices page of your notification hub in a previous section.

  11. Na parte superior a OnLaunched manipulador de eventos App.xaml.cs, adicione a seguinte chamada para o novo InitNotificationsAsync método:At the top of the OnLaunched event handler in App.xaml.cs, add the following call to the new InitNotificationsAsync method:

    InitNotificationsAsync();
    

    Esta ação garante que o URI do canal que é registado no notification hub sempre que o aplicativo é iniciado.This action guarantees that the channel URI is registered in your notification hub each time the application launches.

  12. Para executar a aplicação, prima o teclado F5 chave.To run the app, press the keyboard's F5 key. Será apresentada uma caixa de diálogo que contém a chave de registo.A dialog box containing the registration key will display. Para fechar a caixa de diálogo, clique em OK.To close the dialog, click OK.

    Registado com êxito

A aplicação já está pronta para receber notificações de alerta.Your app is now ready to receive toast notifications.

Enviar notificações de testeSend test notifications

Pode testar rapidamente a receção das notificações na sua aplicação ao enviar notificações no portal do Azure.You can quickly test receiving notifications in your app by sending notifications in the Azure portal.

  1. No portal do Azure, mude para o separador Descrição Geral e selecione Testar Envio na barra de ferramentas.In the Azure portal, switch to the Overview tab, and select Test Send on the toolbar.

    Botão Testar Envio

  2. Na janela Testar Envio, efetue as ações abaixo:In the Test Send window, do the following actions:

    1. Para Plataformas, selecione Windows.For Platforms, select Windows.

    2. Para Tipo de Notificação, selecione Alerta.For Notification Type, select Toast.

    3. Selecione Enviar.Select Send.

      Painel Testar Envio

  3. Veja o resultado da operação Enviar na lista Resultado na parte inferior da janela.See the result of the Send operation in the Result list at the bottom of the window. Também pode ver uma mensagem de alerta.You also see an alert message.

    Resultado da operação Enviar

  4. Verá a mensagem de notificação: Mensagem de teste no ambiente de trabalho.You see the notification message: Test message on your desktop.

    Mensagem de notificação

Passos SeguintesNext steps

Enviou notificações de difusão para todos os dispositivos Windows com o portal ou de uma aplicação de consola.You have sent broadcast notifications to all your Windows devices by using the portal or a console app. Para saber como enviar notificações push para dispositivos específicos, avance para o tutorial seguinte:To learn how to push notifications to specific devices, advance to the following tutorial: