Partilhar via


Trabalhando com recursos no Xamarin.iOS

A adição de funcionalidades a um aplicativo geralmente requer uma configuração de provisionamento adicional. Este guia explica a configuração necessária para todas as funcionalidades.

A Apple fornece capacidades aos desenvolvedores, geralmente conhecidas como serviços de aplicativos, como uma forma de estender as funcionalidades e ampliar o escopo daquilo que os aplicativos iOS podem fazer. As capacidades permitem que os desenvolvedores adicionem uma integração mais profunda dos recursos de plataforma em seus aplicativo, como: a capacidade de realizar transações monetárias iniciadas no aplicativo, serviços de dispositivo adicionais como Siri e muito mais. Essas capacidades podem ser usadas com projetos Xamarin.iOS. A lista completa de serviços está descrita abaixo:

  • Grupos de Aplicativos
  • Domínios associados
  • Proteção de dados
  • Game Center
  • HealthKit
  • HomeKit
  • Configuração de Acessório sem Fio
  • iCloud
  • Compras no Aplicativo
  • Áudio entre aplicativos
  • Apple Pay
  • Carteira
  • Notificação por Push
  • VPN pessoal
  • Siri
  • Mapas
  • Modos em tela de fundo
  • Compartilhamento de conjunto de chaves
  • Extensões de rede
  • Configuração de hotspot
  • Múltiplos caminhos
  • Leitura de marcas NFC

As funcionalidades podem ser habilitadas por meio do Visual Studio para Mac e do Visual Studio 2019 ou manualmente no Portal do Desenvolvedor da Apple. Determinadas capacidades, como Wallet, Apple Pay e iCloud, exigem a configuração adicional das IDs do aplicativo.

Este guia explica como habilitar cada um desses Serviços de Aplicativos em seu aplicativo automaticamente no Visual Studio para Mac e manualmente por meio da central de desenvolvedores, incluindo qualquer configuração adicional que possa ser necessária.

Adicionando Serviços de Aplicativos

Para usar capacidades, o aplicativo deve ter um perfil de provisionamento válido que contenha uma ID do aplicativo com o serviço correto habilitado. A criação desse perfil de provisionamento pode ser realizada automaticamente no Visual Studio para Mac e no Visual Studio 2019 ou manualmente na Central de Desenvolvedores da Apple.

Esta seção explica como usar o provisionamento automático do Visual Studio ou a Central de Desenvolvedores para habilitar a maioria das funcionalidades. Há algumas capacidades, como Wallet, iCloud, Apple Pay e Grupos de Aplicativos que exigem uma configuração adicional. Elas são explicadas em detalhes nos guias adjacentes.

Importante

Nem todas as funcionalidades podem ser adicionadas e gerenciadas com o Provisionamento Automático. A lista a seguir contém os recursos compatíveis:

  • HealthKit
  • HomeKit
  • VPN pessoal
  • Configuração de Acessório sem Fio
  • Áudio entre aplicativos
  • SiriKit
  • Ponto de acesso
  • Extensões de rede
  • Leitura de marcas NFC
  • Múltiplos caminhos

No momento, as funcionalidades Notificações por push, Game Center, Compra no aplicativo, Mapas, Compartilhamento de conjunto de chaves, Domínios associados e Proteção de dados não são compatíveis. Para adicionar essas funcionalidades, use o provisionamento manual e siga as etapas na seção Central de Desenvolvedores.

Como usar o IDE

Os recursos são adicionados ao Entitlements.plist no Visual Studio para Mac. Para adicionar funcionalidades, siga as etapas abaixo:

  1. Abra o arquivo Info.plist do aplicativo iOS e selecione o esquema Provisionamento Automático e sua Equipe na caixa de combinação. Siga as etapas no guia Provisionamento automático se precisar de ajuda:

    Automatically manage signing option

  2. Abra o arquivo Entitlements.plist e selecione a funcionalidade que deseja adicionar:

    Screenshot shows contents of the Entitlements.plist file.

    Selecionar uma funcionalidade faz duas coisas:

    • Adiciona esse recurso à ID do aplicativo
    • Adiciona o par chave-valor do direito ao arquivo Entitlements.plist.

    O Visual Studio para Mac informará quando essas tarefas tiverem sido realizadas exibindo a seguinte mensagem de êxito:

    Screenshot shows the notification when Automatic Provisioning finishes.

Usando a Central de Desenvolvedores

Usar a central de desenvolvedores é um processo de duas etapas que requer a criação de uma ID do aplicativo e o uso dessa ID do aplicativo para criar um perfil de provisionamento. Essas etapas são detalhadas abaixo.

Criando uma ID do aplicativo com um serviço de aplicativo

  1. Procure a Central de desenvolvedores da Apple em um Mac (o Mac host do build, caso esteja usando um computador Windows) e faça logon.

  2. Selecione Certificados, Identificadores e Perfis:

    Apple Developer Center

  3. Em Identificadores, selecione IDs do aplicativo:

    App ID selection in Developer Center

  4. Pressione o botão + no canto superior direito para criar uma nova ID do aplicativo.

  5. Insira uma descrição de ID do Aplicativo, selecione ID do Aplicativo Explícita e insira uma ID de lote no formato com.domain.appname. Esta ID de lote deve corresponder à ID de lote em seu projeto:

    Adding App ID details

  6. Em Serviços de Aplicativos selecione o serviço ou os serviços que são necessários para seu aplicativo:

    App Services selection page

  7. Pressione Continuar.

  8. Confirme a ID do aplicativo. Cada serviço estará em um dos seguintes estados: Habilitado, Desabilitado, ou Configurável, conforme é ilustrado abaixo. Se estiver Habilitado, estará pronto para ser usado em um perfil de provisionamento. Se estiver Configurável, uma configuração adicional será necessária para essa capacidade. Estas etapas adicionais estão descritas mais detalhadamente nas próximas seções.

    App ID confirmation

  9. Clique em Registrar e em Concluído. A ID do aplicativo recém-criada deve ser exibida na lista de IDs do aplicativo iOS.

Criando um Perfil de Provisionamento

Agora, crie um perfil de provisionamento que contenha essa ID do aplicativo. Siga as etapas abaixo:

  1. No Apple Developer Center, navegue até Provisioning Profiles > All:

    Provisioning Profile section

  2. Pressione o botão + no canto superior direito para criar um novo perfil de provisionamento.

  3. Selecione o tipo de perfil de provisionamento que você precisa e clique em Continuar:

    Provisioning Profile selection

  4. Na lista suspensa, selecione a ID do aplicativo que foi criada nas etapas acima e pressione Continuar:

    App ID selection

  5. Selecione os certificados usados para assinar o aplicativo e pressione Continuar:

    Certificate selection

  6. Selecione os dispositivos a serem incluídos neste perfil e pressione Continuar:

    Select devices for Provisioning Profile

  7. Dê um nome ao perfil para que ele possa ser identificado e pressione Continuar para gerar o perfil:

    Name provisioning Profile

  8. Pressione o botão Baixar para baixá-lo e, em seguida, clique duas vezes no arquivo no Finder para instalar o perfil de provisionamento.

  9. Se você estiver usando o Visual Studio, verifique se a opção Provisionamento Manual está selecionada.

  10. No Visual Studio para Mac / Visual Studio, navegue até Project Options > Bundle Signing e defina o perfil de provisionamento para aquele que acabou de ser criado:

    Visual Studio for Mac Project Options

Importante

Talvez você também precise definir as chaves de direito no arquivo Entitlement.plist e as chaves de privacidade no arquivo Info.plist. Mais informações sobre esses direitos são fornecidas no guia Trabalhando com direitos.

Próximas etapas

Quando uma capacidade tiver sido habilitada no lado do servidor, ainda haverá trabalho a ser feito para permitir que seu aplicativo use a funcionalidade. A lista a seguir descreve as etapas adicionais que precisam ser executadas:

  • Use o namespace do framework em seu aplicativo.
  • Adicione os direitos necessários para seu aplicativo. As informações sobre os direitos necessários e como adicioná-los estão detalhadas no guia Introdução aos direitos.

Solução de problemas de capacidades

A lista a seguir detalha alguns dos problemas mais comuns que podem criar obstáculos ao desenvolver um aplicativo com um serviço de aplicativo habilitado.

  • Verifique se a ID correta foi criada e registrada corretamente na seção Certificados, IDs e Perfis do Portal do Desenvolvedor da Apple.
  • Verifique se o serviço foi adicionado à ID do aplicativo (ou da extensão) e se o serviço está configurado para usar o grupo de aplicativos, a ID do comerciante ou o contêiner criado anteriormente em Certificados, IDs e Perfis do Portal do Desenvolvedor da Apple.
  • Verifique se os perfis de provisionamento e IDs do aplicativo foram instaladas e que Info.plist do aplicativo (no projeto Xamarin) está usando uma das IDs do aplicativo configuradas acima.
  • Verifique se o arquivo Entitlements.plist do aplicativo (no projeto Xamarin) tem o serviço correto habilitado.
  • Verifique se as chaves de privacidade apropriadas estão definidas no info.plist
  • Na Assinatura de Pacote do iOS do aplicativo, certifique-se de que Direitos Personalizados está definido como Entitlements.plist. Esta não é a configuração padrão para builds de depuração e do simulador do iOS.

Resumo

Este guia explicou as Funcionalidades ou, serviços de aplicativos, e descreveu como elas podem ser habilitadas no Visual Studio e na Central de Desenvolvedores da Apple. Ele também detalhou como configurar os serviços mais complicados, como Wallet, iCloud, Apple Pay e Grupos de Aplicativos. Por fim, ele abordou as próximas etapas de configuração e opções de solução de problemas simples.