Tutorial: Notificações por push para aplicativos Xamarin. iOS usando hubs de notificação do AzureTutorial: Push notifications to Xamarin.iOS apps using Azure Notification Hubs

Descrição geralOverview

Este tutorial mostra como utilizar os Notification Hubs do Azure para enviar notificações push para uma aplicação iOS.This tutorial shows you how to use Azure Notification Hubs to send push notifications to an iOS application. Vai criar uma aplicação Xamarin.iOS em branco que recebe notificações push com o serviço Apple Push Notification (APNs).You create a blank Xamarin.iOS app that receives push notifications by using the Apple Push Notification service (APNs).

Quando tiver terminado, pode utilizar o Hub de Notificação para difundir notificações push para todos os dispositivos a executar a sua aplicação.When you're finished, you are able to use your notification hub to broadcast push notifications to all the devices running your app. O código concluído está disponível no exemplo de aplicativo NotificationHubs .The finished code is available in the NotificationHubs app sample.

Neste tutorial, pode criar/atualizar código para efetuar as seguintes tarefas:In this tutorial, you create/update code to do the following tasks:

  • Gerar o ficheiro de pedido de assinatura de certificadoGenerate the certificate signing request file
  • Registar a aplicação para notificações pushRegister your app for push notifications
  • Criar um perfil de aprovisionamento para a aplicaçãoCreate a provisioning profile for the app
  • Configurar o hub de notificação para notificações push do iOSConfigure your notification hub for iOS push notifications
  • Enviar notificações push de testeSend test push notifications

Pré-requisitosPrerequisites

  • Subscrição do Azure.Azure subscription. Se você não tiver uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.If you don't have an Azure subscription, create a free Azure account before you begin.

  • Versão mais recente do Xcode.Latest version of Xcode

  • Um dispositivo compatível iOS 10 (ou versão posterior)An iOS 10 (or later version) compatible device

  • Associação ao Programa de Programador da AppleApple Developer Program membership.

  • Visual Studio para MacVisual Studio for Mac

    Nota

    Devido aos requisitos de configuração para as notificações push do iOS, deve implementar e testar a aplicação de exemplo num dispositivo iOS físico (iPhone ou iPad) em vez do simulador.Because of configuration requirements for iOS push notifications, you must deploy and test the sample application on a physical iOS device (iPhone or iPad) instead of in the simulator.

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

Gerar o ficheiro de pedido de assinatura de certificadoGenerate the certificate-signing request file

Serviço Apple Push Notification (APNs) utiliza certificados para autenticar as notificações push.The Apple Push Notification Service (APNs) uses certificates to authenticate your push notifications. Siga estas instruções para criar o certificado push necessário para enviar e receber notificações.Follow these instructions to create the necessary push certificate to send and receive notifications. Para obter mais informações sobre estes conceitos, veja a documentação oficial do Serviço Apple Push Notification.For more information on these concepts, see the official Apple Push Notification Service documentation.

Gere o ficheiro de certificado de assinatura do pedido (CSR), que utiliza a Apple para gerar um certificado push assinado.Generate the Certificate Signing Request (CSR) file, which Apple uses to generate a signed push certificate.

  1. No Mac, execute a ferramenta de Acesso Keychain.On your Mac, run the Keychain Access tool. Pode ser aberta a partir da utilitários pasta ou o outros pasta em que o ponto de partida.It can be opened from the Utilities folder or the Other folder on the Launchpad.

  2. Selecione acesso Keychain, expanda Assistente de certificadoe, em seguida, selecione pedir um certificado de uma autoridade de certificação.Select Keychain Access, expand Certificate Assistant, and then select Request a Certificate from a Certificate Authority.

    Utilizar o Acesso Keychain para pedir um novo certificado

  3. Selecione seu endereço de E-Mail do utilizador, introduza o seu nome comum valor, certifique-se de que especifica guardar no discoe, em seguida, selecione continuar.Select your User Email Address, enter your Common Name value, make sure that you specify Saved to disk, and then select Continue. Deixe endereço de E-Mail de AC em branco como não é necessária.Leave CA Email Address blank as it isn't required.

    Informações de certificado obrigatórias

  4. Introduza um nome para o ficheiro CSR guardar como, selecione a localização na ondee, em seguida, selecione guardar.Enter a name for the CSR file in Save As, select the location in Where, and then select Save.

    Escolha um nome de ficheiro para o certificado

    Esta ação guarda o ficheiro CSR na localização selecionada.This action saves the CSR file in the selected location. A localização predefinida é Desktop.The default location is Desktop. Memorize a localização escolhida para o ficheiro.Remember the location chosen for the file.

Em seguida, registar a sua aplicação com a Apple, ative as notificações push e carregar o CSR exportado para criar um certificado push.Next, register your app with Apple, enable push notifications, and upload the exported CSR to create a push certificate.

Registar a aplicação para notificações pushRegister your app for push notifications

Enviar notificações push para aplicações iOS, registar a sua aplicação com a Apple e também se registrar para notificações push.To push notifications to an iOS app, register your application with Apple and also register for push notifications.

  1. Se ainda não registou a aplicação, navegue para o Portal de aprovisionamento do iOS no Apple Developer Center.If you haven't already registered your app, browse to the iOS Provisioning Portal at the Apple Developer Center. Depois disso, inicie sessão com o seu ID Apple, selecione identificadores, selecione IDs de aplicaçõese, finalmente, selecione + para registar uma nova aplicação.After that, sign in with your Apple ID, select Identifiers, select App IDs, and finally select + to register a new app.

    Página de IDs de Aplicação do Portal de Aprovisionamento do iOS

  2. Atualizar os seguintes três valores para a nova aplicação e, em seguida, selecione continuar:Update the following three values for your new app, and then select Continue:

    • Nome: Escreva um nome descritivo para a sua aplicação no Name caixa descrição do ID da aplicação secção.Name: Type a descriptive name for your app in the Name box in the App ID Description section.

    • Identificador do pacote: Na ID de aplicação explícito , digite um identificador do pacote do formulário <Organization Identifier>.<Product Name> conforme mencionado na guia de distribuição de aplicações.Bundle Identifier: In the Explicit App ID section, enter a Bundle Identifier of the form <Organization Identifier>.<Product Name> as mentioned in the App Distribution Guide. O identificador de organização e nome do produto valores têm de corresponder o nome de produto e o identificador de organização que utiliza quando cria o projeto Xcode.The Organization Identifier and Product Name values must match the organization identifier and product name you use when you create your Xcode project. Captura de ecrã seguinte, o NotificationHubs valor é utilizado como um identificador de organização e o GetStarted valor é utilizado como o nome do produto.In the following screenshot, the NotificationHubs value is used as an organization identifier and the GetStarted value is used as the product name. Certifique-se de que o identificador de pacote valor corresponde ao valor no projeto Xcode, para que o Xcode irá utilizar o perfil de publicação correto.Make sure the Bundle Identifier value matches the value in your Xcode project, so that Xcode will use the correct publishing profile.

    • Notificações push: Verifique os notificações Push opção a dos serviços de aplicações secção.Push Notifications: Check the Push Notifications option in the App Services section.

      Formulário para registar um novo ID de Aplicação

      Esta ação gera o ID da aplicação e que está a confirmar as informações de pedidos.This action generates your App ID and requests that you confirm the information. Selecione registar para confirmar o novo ID de aplicação.Select Register to confirm the new App ID.

      Depois de selecionar registar, verá o registo concluído ecrã conforme mostrado na imagem seguinte.After you select Register, you see the Registration complete screen as shown in the following image. Selecione Done (Concluído).Select Done.

      Registo de ID de aplicação completo que mostra as elegibilidades

  3. No Centro de programadores, sob IDs de aplicações, localize o ID da aplicação que criou e selecione a sua linha.In the Developer Center, under App IDs, locate the app ID that you created and select its row.

    Lista de ID de Aplicação

    Selecione o ID da aplicação para apresentar os detalhes da aplicação e, em seguida, selecione o editar na parte inferior.Select the app ID to display the app details, and then select the Edit button at the bottom.

    Editar a página de ID de Aplicação

  4. Desloque-se para a parte inferior do ecrã e selecione o Criar certificado botão sob os certificado SSL do Push desenvolvimento secção.Scroll to the bottom of the screen and select the Create Certificate button under the Development Push SSL Certificate section.

    Criar certificado para o botão de ID de Aplicação

    Verá o adicionar certificado iOS assistente.You now see the Add iOS Certificate assistant.

    Nota

    Este tutorial utiliza um certificado de programação.This tutorial uses a development certificate. É utilizado o mesmo processo ao registar um certificado de produção.The same process is used when registering a production certificate. Não se esqueça de verificar se está a utilizar o mesmo tipo de certificado ao enviar notificações.Just make sure that you use the same certificate type when sending notifications.

  5. Selecione Escolher ficheiro, navegue até à localização onde guardou o ficheiro CSR na primeira tarefa e, em seguida, selecione gerar.Select Choose File, browse to the location where you saved the CSR file from the first task, and then select Generate.

    Página de carregamento do CSR de certificado gerado

  6. Depois do portal cria o certificado, selecione o baixe e, em seguida, selecione feito.After the portal creates the certificate, select the Download button and then select Done.

    Página de transferência do certificado gerado

    O certificado é transferido e guardado no seu computador na sua Downloads pasta.The certificate is downloaded and saved to your computer in your Downloads folder.

    Localizar o ficheiro de certificado na pasta Transferências

    Nota

    Por predefinição, o certificado de desenvolvimento transferido é denominado aps_development.By default, the downloaded development certificate is named aps_development.cer.

  7. Selecione o certificado push transferido aps_development.Select the downloaded push certificate aps_development.cer.

    Esta ação instala o novo certificado na Keychain, conforme apresentado na imagem seguinte:This action installs the new certificate in the Keychain, as shown in the following image:

    Lista de certificados de Acesso Keychain que mostra o novo certificado

    Nota

    Embora o nome do seu certificado poderá ser diferente, o nome terá o prefixo Apple Development iOS Push Services.Although the name in your certificate might be different, the name will be prefixed with Apple Development iOS Push Services.

  8. No Acesso Keychain, clique com o botão direito do rato no novo certificado push que criou na categoria Certificados.In Keychain Access, right-click the new push certificate that you created in the Certificates category. Selecione exportar, dê um nome de ficheiro, selecione a p12 formatar e, em seguida, selecione guardar.Select Export, name the file, select the .p12 format, and then select Save.

    Exportar o certificado no formato p12

    Tome nota do nome do ficheiro e da localização do certificado .p12 exportado.Make a note of the file name and location of the exported .p12 certificate. Eles são usados para ativar a autenticação com APNs.They are used to enable authentication with APNs.

    Nota

    Este tutorial cria um ficheiro denominado QuickStart.p12.This tutorial creates a file named QuickStart.p12. O nome do ficheiro e a localização poderão ser diferentes.Your file name and location might be different.

Criar um perfil de aprovisionamento para a aplicaçãoCreate a provisioning profile for the app

  1. Na Portal de aprovisionamento do iOS, selecione perfis de aprovisionamento, selecione todos ose, em seguida, selecione + para criar um novo perfil.In the iOS Provisioning Portal, select Provisioning Profiles, select All, and then select + to create a new profile. Verá o adicionar perfil de aprovisionamento do iOS assistente.You see the Add iOS Provisioning Profile wizard.

    Lista de perfis de aprovisionamento

  2. Selecione desenvolvimento de aplicações iOS sob desenvolvimento como o aprovisionamento de tipo de perfil e selecione continuar.Select iOS App Development under Development as the provisioning profile type, and select Continue.

  3. Em seguida, selecione o ID da aplicação que criou a partir da ID da aplicação na lista pendente e selecione continuar.Next, select the app ID you created from the App ID drop-down list, and select Continue.

    Selecionar o ID de Aplicação

  4. Na selecionar certificados janela, selecione o seu certificado de programação habitual utilizado para assinatura de código e selecione continuar.In the Select certificates window, select your usual development certificate that you used for code signing, and select Continue. Este certificado não é o certificado de push que criou.This certificate isn't the push certificate you created.

    Selecionar o certificado

  5. Em seguida, selecione os dispositivos para utilizar em testes e selecione continuar.Next, select the devices to use for testing, and select Continue.

    Selecionar os dispositivos

  6. Por fim, escolha um nome para o perfil em nome do perfile selecione gerar.Finally, pick a name for the profile in Profile Name, and select Generate.

    Escolher um nome de perfil de aprovisionamento

  7. Quando é criado o novo perfil de aprovisionamento, optar por baixar e instalá-lo no seu computador de desenvolvimento do Xcode.When the new provisioning profile is created, choose to download and install it on your Xcode development machine. Em seguida, selecione Done (Concluído).Then select Done.

    Transferir o perfil de aprovisionamento

Criar um hub de notificaçãoCreate a notification hub

Nesta secção, criar um hub de notificação e configurar a autenticação com APNs utilizando o certificado de push. p12 que criou anteriormente.In this section, you create a notification hub and configure authentication with APNs by using the .p12 push certificate that you previously created. Se pretender utilizar um notification hub que já tenha criado, pode avançar para o passo 5.If you want to use a notification hub that you've already created, you can skip to step 5.

  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 o notification hub com informações do APNsConfigure your notification hub with APNs information

  1. Em Serviços de Notificação, selecione Apple (APNS) .Under Notification Services, select Apple (APNS).

  2. Selecione Certificado.Select Certificate.

  3. Selecione o ícone de ficheiro.Select the file icon.

  4. Selecione o ficheiro. p12 que exportou anteriormente.Select the .p12 file that you exported earlier.

  5. Especifique a palavra-passe correta.Specify the correct password.

  6. Selecione o modo Sandbox.Select Sandbox mode. Utilize o modo Produção apenas se quiser enviar notificações push a utilizadores que já tenham adquirido a aplicação na loja.Use the Production mode only if you want to send push notifications to users who purchased your app from the store.

    Configurar certificação APNs no portal do Azure

Agora, configurou o hub de notificação com o APNs.You've now configured your notification hub with APNs. Também tem as cadeias de ligação para registar a sua aplicação e enviar notificações push.You also have the connection strings to register your app and send push notifications.

Ligar a aplicação ao Notification HubConnect your app to the notification hub

Criar um novo projetoCreate a new project

  1. No Visual Studio, crie um novo projeto do iOS e selecione o modelo Aplicação de Vista Única e clique em SeguinteIn Visual Studio, create a new iOS project and select the Single View App template, and click Next

    Visual Studio - Selecione o Tipo de Aplicação

  2. Insira o nome do aplicativo e o identificador da organização, clique em Avançare em criarEnter your App Name and Organization identifier, then click Next, then Create

  3. Na vista Solução, faça duplo clique em Info.plist e, em Identidade, certifique-se de que o Identificador do Pacote corresponde ao utilizado aquando da criação do seu perfil de aprovisionamento.From the Solution view, double-click Info.plist and under Identity make sure your Bundle Identifier matches the one used when creating your provisioning profile. Em Assinatura certifique-se de que a sua conta de Programador está selecionada em Equipa, que "Gerir assinatura automaticamente" está selecionado e que o certificado de assinatura e perfil de aprovisionamento são automaticamente selecionados.Under Signing ensure that your Developer account is selected under Team, "Automatically manage signing" is selected and your Signing Certificate and Provisioning Profile are automatically selected.

    Configuração de Aplicação do Visual Studio-iOS

  4. No modo de exibição de solução, clique duas Entitlements.plist vezes em e verifique se a opção habilitar notificações por push está marcada.From the Solution view, double-click the Entitlements.plist and ensure that Enable Push Notifications is checked.

    Configuração de Elegibilidade do Visual Studio-iOS

  5. Adicione o pacote de Mensagens do Azure.Add the Azure Messaging package. Na vista Solução, clique com o botão direito no projeto e selecione Adicionar > Adicionar pacotes de NuGet.In the Solution view, right-click the project and select Add > Add NuGet Packages. Procure Xamarin.Azure.NotificationHubs.iOS e adicione o pacote ao projeto.Search for Xamarin.Azure.NotificationHubs.iOS and add the package to your project.

  6. Adicione um novo arquivo à sua classe, nomeie- Constants.cs o e adicione as variáveis a seguir e substitua os espaços reservados de literal hubname de cadeia DefaultListenSharedAccessSignature de caracteres pelo e o observado anteriormente.Add a new file to your class, name it Constants.cs and add the following variables and replace the string literal placeholders with the hubname and the DefaultListenSharedAccessSignature noted earlier.

    // Azure app-specific connection string and hub path
    public const string ListenConnectionString = "<Azure DefaultListenSharedAccess Connection String>";
    public const string NotificationHubName = "<Azure Notification Hub Name>";
    
  7. No AppDelegate.cs, adicione a seguinte instrução Using:In AppDelegate.cs, add the following using statement:

    using WindowsAzure.Messaging;
    using UserNotifications
    
  8. Declarar uma instância de SBNotificationHub:Declare an instance of SBNotificationHub:

    private SBNotificationHub Hub { get; set; }
    
  9. No AppDelegate.cs, atualize FinishedLaunching() para corresponder ao seguinte código:In AppDelegate.cs, update FinishedLaunching() to match the following code:

    public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
    {
        if (UIDevice.CurrentDevice.CheckSystemVersion(10, 0))
        {
            UNUserNotificationCenter.Current.RequestAuthorization(UNAuthorizationOptions.Alert | UNAuthorizationOptions.Badge | UNAuthorizationOptions.Sound,
                                                                    (granted, error) =>
            {
                if (granted)
                    InvokeOnMainThread(UIApplication.SharedApplication.RegisterForRemoteNotifications);
            });
        } else if (UIDevice.CurrentDevice.CheckSystemVersion (8, 0)) {
            var pushSettings = UIUserNotificationSettings.GetSettingsForTypes (
                    UIUserNotificationType.Alert | UIUserNotificationType.Badge | UIUserNotificationType.Sound,
                    new NSSet ());
    
            UIApplication.SharedApplication.RegisterUserNotificationSettings (pushSettings);
            UIApplication.SharedApplication.RegisterForRemoteNotifications ();
        } else {
            UIRemoteNotificationType notificationTypes = UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound;
            UIApplication.SharedApplication.RegisterForRemoteNotificationTypes (notificationTypes);
        }
    
        return true;
    }
    
  10. No AppDelegate.cs, substitua o RegisteredForRemoteNotifications() método:In AppDelegate.cs, override the RegisteredForRemoteNotifications() method:

    public override void RegisteredForRemoteNotifications(UIApplication application, NSData deviceToken)
    {
        Hub = new SBNotificationHub(Constants.ListenConnectionString, Constants.NotificationHubName);
    
        Hub.UnregisterAllAsync (deviceToken, (error) => {
            if (error != null)
            {
                System.Diagnostics.Debug.WriteLine("Error calling Unregister: {0}", error.ToString());
                return;
            }
    
            NSSet tags = null; // create tags if you want
            Hub.RegisterNativeAsync(deviceToken, tags, (errorCallback) => {
                if (errorCallback != null)
                    System.Diagnostics.Debug.WriteLine("RegisterNativeAsync error: " + errorCallback.ToString());
            });
        });
    }
    
  11. No AppDelegate.cs, substitua o ReceivedRemoteNotification() método:In AppDelegate.cs, override the ReceivedRemoteNotification() method:

    public override void ReceivedRemoteNotification(UIApplication application, NSDictionary userInfo)
    {
        ProcessNotification(userInfo, false);
    }
    
  12. No AppDelegate.cs, crie o ProcessNotification() método:In AppDelegate.cs, create the ProcessNotification() method:

    void ProcessNotification(NSDictionary options, bool fromFinishedLaunching)
    {
        // Check to see if the dictionary has the aps key.  This is the notification payload you would have sent
        if (null != options && options.ContainsKey(new NSString("aps")))
        {
            //Get the aps dictionary
            NSDictionary aps = options.ObjectForKey(new NSString("aps")) as NSDictionary;
    
            string alert = string.Empty;
    
            //Extract the alert text
            // NOTE: If you're using the simple alert by just specifying
            // "  aps:{alert:"alert msg here"}  ", this will work fine.
            // But if you're using a complex alert with Localization keys, etc.,
            // your "alert" object from the aps dictionary will be another NSDictionary.
            // Basically the JSON gets dumped right into a NSDictionary,
            // so keep that in mind.
            if (aps.ContainsKey(new NSString("alert")))
                alert = (aps [new NSString("alert")] as NSString).ToString();
    
            //If this came from the ReceivedRemoteNotification while the app was running,
            // we of course need to manually process things like the sound, badge, and alert.
            if (!fromFinishedLaunching)
            {
                //Manually show an alert
                if (!string.IsNullOrEmpty(alert))
                {
                    UIAlertView avAlert = new UIAlertView("Notification", alert, null, "OK", null);
                    avAlert.Show();
                }
            }
        }
    }
    

    Nota

    Você pode optar por substituir FailedToRegisterForRemoteNotifications() para lidar com situações como nenhuma conexão de rede.You can choose to override FailedToRegisterForRemoteNotifications() to handle situations such as no network connection. Isto é especialmente importante quando o utilizador inicia a aplicação no modo offline (por exemplo, Avião) e pretende processar cenários de mensagens push específicos para a sua aplicação.This is especially important where the user might start your application in offline mode (for example, Airplane) and you want to handle push messaging scenarios specific to your app.

  13. Execute o aplicativo no seu dispositivo.Run the app on your device.

Enviar notificações push de testeSend test push notifications

Pode testar a receção das notificações na aplicação com a opção Envio de Teste no Azure portal.You can test receiving notifications in your app with the Test Send option in the Azure portal. Esta ação envia uma notificação push de teste para o seu dispositivo.It sends a test push notification to your device.

Portal do Azure – Envio de Teste

Normalmente, as notificações push são enviadas num serviço de back-end como Mobile Apps ou ASP.NET com uma biblioteca compatível.Push notifications are normally sent in a back-end service like Mobile Apps or ASP.NET using a compatible library. Caso não esteja disponível uma biblioteca para o back-end, também pode utilizar a API REST diretamente para enviar mensagens de notificação.If a library is not available for your back-end, you can also use the REST API directly to send notification messages.

Passos SeguintesNext steps

Neste tutorial, enviou notificações de difusão para todos os dispositivos iOS registados no back-end.In this tutorial, you sent broadcast notifications to all your iOS devices registered with the backend. Para saber como enviar notificações push para dispositivos iOS específicos, avance para o tutorial seguinte:To learn how to push notifications to specific iOS devices, advance to the following tutorial: