Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste tutorial, você criará um hub de notificação para enviar notificações por push para um aplicativo da Plataforma Universal do Windows (UWP). Você cria um aplicativo da Windows Store em branco que recebe notificações por push usando o Serviço de Notificação por Push do Windows (WNS). Em seguida, use o hub de notificação para transmitir notificações por push para todos os dispositivos que executam seu aplicativo.
Observação
Você pode encontrar o código completo para este tutorial no GitHub.
Execute as seguintes etapas:
- Criar um aplicativo na Windows Store
- Criar um hub de notificação
- Criar um aplicativo windows de exemplo
- Enviar notificações de teste
Pré-requisitos
- Assinatura do Azure. Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
- Microsoft Visual Studio 2017 ou posterior. O exemplo neste tutorial usa o Visual Studio 2019.
- Ferramentas de desenvolvimento de aplicativos UWP instaladas.
- Uma conta ativa da Windows Store.
- Confirme que a configuração Receber notificações de aplicativos e outros remetentes está habilitada.
- Inicie a janela Configurações em seu computador.
- Selecione o bloco Sistema.
- Selecione Notificações > ações no menu à esquerda.
- Confirme se a configuração Obter notificações de aplicativos e outros remetentes está habilitada. Se ele não estiver habilitado, habilite-o.
Concluir este tutorial é um pré-requisito para todos os outros tutoriais de Hubs de Notificação para aplicativos UWP.
Criar um aplicativo na Windows Store
Observação
O MPNS (Serviço de Notificação por Push) da Microsoft foi preterido e não há mais suporte.
Para enviar notificações por push para aplicativos UWP, associe seu aplicativo à Windows Store. Em seguida, configure o hub de notificação para se integrar ao WNS.
Navegue até o Centro de Desenvolvimento do Windows, entre com sua conta da Microsoft e, em seguida, selecione Criar um novo aplicativo.
Digite um nome para seu aplicativo e selecione Reservar nome do produto. Isso cria um novo registro da Windows Store para seu aplicativo.
Expanda o gerenciamento de produtos e selecione Identidade do Produto. Anote os valores SID do Pacote, Pacote/Identidade/Nome, Pacote/Identidade/Publicador e Pacote/Propriedades/PublisherDisplayName .
Em Gerenciamento de produtos, selecione WNS/MPNS e selecione o portal de Registro de Aplicativo. Entre em sua conta Microsoft. A página de cadastro da aplicação é aberta em uma nova guia.
No Essentials, selecione as credenciais do cliente: Adicionar um certificado ou segredo.
Na página Certificados & segredos , em Segredos do Cliente, selecione Novo segredo do cliente. Depois de criar um segredo do cliente (também chamado de segredo do aplicativo), anote-o antes de sair da página.
Aviso
Você só pode exibir valores de segredo do cliente (segredo do aplicativo) imediatamente após criá-los. Salve o segredo antes de sair da página.
Aviso
O segredo do aplicativo e o SID do pacote são credenciais de segurança importantes. Não compartilhe esses valores com ninguém nem distribua-os com seu aplicativo.
Criar um hub de notificação
Entre no portal do Azure.
Selecione Todos os serviços no menu esquerdo.
Digite Hubs de Notificação na caixa de texto Filtrar serviços. Selecione o ícone de estrela ao lado do nome do serviço para adicionar o serviço na seção FAVORITOS no menu à esquerda. Selecione Hubs de Notificação.
Na página Hubs de Notificações, selecione Criar na barra de ferramentas.
Na guia Informações Básicas da página Hub de Notificações, execute as seguintes etapas:
Em Assinatura, selecione o nome da assinatura do Azure que deseja usar e escolha um grupo de recursos existente ou crie um.
Insira um nome exclusivo para o novo namespace em Detalhes do Namespace.
Um namespace contém um ou mais hubs de notificações. Portanto, digite um nome para o hub em Detalhes do Hub de Notificações.
Selecione um valor da lista suspensa Local. Esse valor especifica a localização na qual você deseja criar o hub.
Revise a opção Zonas de Disponibilidade. Se você escolher uma região que tenha zonas de disponibilidade, a caixa de seleção será marcada por padrão. As Zonas de Disponibilidade são um recurso pago, portanto, um valor adicional será acrescentado à sua camada de serviço.
Escolha uma opção de Recuperação de desastre: Nenhuma, Região de recuperação emparelhada ou Região de recuperação flexível. Se você escolher Região de recuperação emparelhada, a região de failover será exibida. Se você selecionar Região de recuperação flexível, use a lista suspensa para escolher uma das regiões de recuperação.
Selecione Criar.
Após a conclusão da implantação, selecione Ir para o recurso.
Definir configurações do WNS para o hub
Na categoria CONFIGURAÇÕES DE NOTIFICAÇÃO, selecione Windows (WNS).
Insira valores para o SID do Pacote (como "ms-app://
<Your Package SID>
") e a Chave de Segurança (o Segredo do Aplicativo) que você anotou na seção anterior.Clique em Salvar na barra de ferramentas.
Seu hub de notificação agora está configurado para funcionar com o WNS. Você possui as strings de conexão para registrar seu aplicativo e enviar notificações.
Criar um aplicativo windows de exemplo
No Visual Studio, abra o menu Arquivo, selecione Novo e, em seguida, Projeto.
Na caixa de diálogo Criar um novo projeto , conclua as seguintes etapas:
Na caixa de pesquisa na parte superior, digite Windows Universal.
Nos resultados da pesquisa, selecione Aplicativo em Branco (Windows Universal) e, em seguida, selecione Avançar.
Na caixa de diálogo Configurar seu novo projeto , insira um nome de projeto e um local para os arquivos do projeto.
Selecione Criar.
Aceite os padrões para as versões de plataforma mínima e de destino e selecione OK.
No Gerenciador de Soluções, clique com o botão direito do mouse no projeto de aplicativo da Windows Store, selecione Publicar e selecione Associar Aplicativo à Loja. O assistente Associar seu aplicativo à Windows Store é exibido.
No assistente, faça login com sua conta da Microsoft.
Selecione o aplicativo que você registrou na etapa 2, selecione Avançar e selecione Associar. Isso adiciona as informações de registro necessárias da Windows Store ao manifesto do aplicativo.
No Visual Studio, clique com o botão direito do mouse na solução e selecione Gerenciar Pacotes NuGet. A janela Gerenciar Pacotes NuGet é aberta.
Na caixa de pesquisa, insira WindowsAzure.Messaging.Managed, selecione Instalar e aceite os termos de uso.
Essa ação baixa, instala e adiciona uma referência à biblioteca de Hubs de Notificação do Azure para Windows usando o pacote NuGet Microsoft.Azure.NotificationHubs.
Abra o arquivo de
App.xaml.cs
projeto e adicione as seguintes instruções:using Windows.Networking.PushNotifications; using Microsoft.WindowsAzure.Messaging; using Windows.UI.Popups;
No arquivo do projeto
App.xaml.cs
, localize a classeApp
e adicione a seguinte definição de métodoInitNotificationsAsync
. Substitua<your hub name>
pelo nome do hub de notificação que você criou no portal do Azure e substitua<Your DefaultListenSharedAccessSignature connection string>
pelaDefaultListenSharedAccessSignature
cadeia de conexão da página Policias de Acesso do hub de notificação: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(); } }
Esse código recupera no WNS o URI do canal para o aplicativo e registra esse URI do canal no hub de notificação.
Observação
Substitua o marcador de posição
hub name
pelo nome do hub de notificação que aparece no portal do Azure. Além disso, substitua o espaço reservado da cadeia de conexão pela cadeia de conexãoDefaultListenSharedAccessSignature
obtida na página Políticas de Acesso do seu hub de notificação em uma seção anterior.No início do manipulador de eventos
OnLaunched
, emApp.xaml.cs
, adicione a seguinte chamada ao novo métodoInitNotificationsAsync
:InitNotificationsAsync();
Essa ação garante que o URI do canal seja registrado no hub de notificação sempre que o aplicativo for iniciado.
Clique com o botão direito do mouse
Package.appxmanifest
e selecione Código de Exibição (F7). Localize<Identity .../>
e substitua o valor de Nome pelo Pacote/Identidade/Nome e substitua seu valor de Publicador pelo valor de Pacote/Identidade/Publicador do aplicativo criado anteriormente.Para executar o aplicativo, pressione a tecla F5 do teclado. Uma caixa de diálogo que contém a chave de registro será exibida. Para fechar a caixa de diálogo, clique em OK.
Seu aplicativo agora está pronto para receber notificações toast.
Enviar notificações de teste
Você pode testar rapidamente o recebimento de notificações em seu aplicativo enviando notificações no portal do Azure.
No portal do Azure, alterne para a guia Visão Geral e selecione Testar Enviar na barra de ferramentas.
Na janela Enviar teste , execute as seguintes ações:
Para Plataformas, selecione Windows.
Para Tipo de Notificação, selecione Toast.
Selecione Enviar.
Veja o resultado da operação Enviar na lista De resultados na parte inferior da janela. Você também verá uma mensagem de alerta.
Você vê a mensagem de notificação: Mensagem de teste na área de trabalho.
Próximas etapas
Você enviou notificações de transmissão para todos os seus dispositivos Windows usando o portal do Azure ou um aplicativo de console. Para saber como enviar notificações por push a dispositivos específicos, avance ao seguinte tutorial: