Provisionamento manual para aplicativos iOS
O provisionamento manual é uma abordagem para implantar um aplicativo iOS do .NET MAUI (.NET Multi-platform App UI) em um dispositivo, em que você tem controle total sobre os dados de provisionamento criados. Com essa abordagem, você cria e gerencia manualmente identidades de assinatura, IDs de aplicativo e perfis de provisionamento na sua conta de desenvolvedor da Apple e baixa esses dados no Visual Studio. Antes de iniciar o processo de provisionamento manual, verifique se você adicionou sua conta de desenvolvedor da Apple ao Visual Studio. Para obter mais informações, confira Gerenciamento de contas da Apple.
Equipes de desenvolvimento, certificados e perfis podem ser gerenciados acessando a seção Certificados, identificadores e perfis da sua conta de desenvolvedor da Apple.
Gerar um certificado de assinatura
Com o provisionamento manual, a primeira etapa na configuração de um dispositivo de desenvolvimento é criar um certificado de autenticação, que consiste em um certificado de desenvolvimento e uma chave privada.
Os certificados de desenvolvimento e suas chaves associadas estabelecem sua identidade com a Apple e associam você a dispositivos e perfis específicos para desenvolvimento. Isso é análogo a adicionar sua assinatura digital aos seus aplicativos. A Apple usa esses certificados para garantir que você só consiga implantar seus aplicativos em dispositivos específicos.
Importante
Você só pode ter dois certificados de desenvolvimento do iOS em um determinado momento. Se você precisar criar mais, será necessário revogar um existente. Um computador usando um certificado revogado não poderá assinar seu aplicativo.
Depois de adicionar sua conta de desenvolvedor da Apple ao Visual Studio, você precisa gerar um certificado de autenticação:
- No Visual Studio, acesse Ferramentas > Opções > Xamarin > Contas da Apple.
- Na caixa de diálogo Contas de desenvolvedor da Apple, selecione uma equipe e depois Exibir Detalhes.
- Na caixa de diálogo Detalhes, selecione Criar Certificado>Desenvolvimento do iOS. Se você tiver as permissões corretas, uma nova identidade de autenticação será criada e sincronizada com a Apple.
Importante
A chave privada e o certificado que compõem sua identidade de assinatura também serão exportados para o Keychain Access no host de build do Mac, desde que o IDE esteja emparelhado com ele. Para obter mais informações, consulte Emparelhar com Mac para desenvolvimento para iOS.
Entendendo pares de chaves de certificado
Um perfil de desenvolvedor contém certificados, as respectivas chaves associadas e todos os perfis de provisionamento associados à sua conta de desenvolvedor da Apple. Há duas versões de um perfil de desenvolvedor: uma existe em sua conta de desenvolvedor da Apple e a outra reside em um computador local. A diferença entre eles é o tipo de chaves que eles contêm: o perfil em sua Conta de desenvolvedor da Apple contém todas as chaves públicas associadas aos seus certificados, enquanto a cópia em seu computador local contém todas as chaves privadas. Para que os certificados sejam válidos, os pares de chave devem corresponder.
Aviso
Perder o certificado e as chaves associadas pode ser incrivelmente disruptivo, pois exigirá a revogação dos certificados existentes e um novo provisionamento dos dispositivos associados. Após configurar um certificado de desenvolvimento, exporte uma cópia de backup e armazene-a em um local seguro. Para mais informações sobre como fazer isso, consulte Exportar contas de desenvolvedor em help.apple.com.
Provisionar um dispositivo iOS para desenvolvimento
Depois de criar um certificado de autenticação, você deve configurar um perfil de provisionamento de desenvolvimento para que seja possível implantar seu aplicativo em um dispositivo. O dispositivo deve estar executando uma versão do iOS compatível com o Xcode.
Adicionar um dispositivo
Ao criar um perfil de provisionamento, o perfil deve incluir quais dispositivos podem executar o aplicativo. Antes de selecionar um dispositivo a ser adicionado a um perfil de provisionamento, primeiro adicione o dispositivo à sua conta de desenvolvedor da Apple. Você pode adicionar o dispositivo da seguinte forma:
Conecte o dispositivo a ser provisionado ao Mac local com um cabo USB.
Abra Xcode e navegue até Janela > Dispositivos e Simuladores.
Em Xcode, selecione a guia Dispositivos e depois o dispositivo na lista de dispositivos conectados.
Em Xcode, copie o valor do Identificador para a área de transferência:
Em um navegador da Web, vá para a seção Dispositivos da sua Conta de desenvolvedor da Apple e clique no botão +.
Na página Registrar um novo dispositivo, defina a Plataforma correta e dê um nome para o novo dispositivo. Em seguida, cole o identificador da área de transferência no campo Identificação do dispositivo (UDID) e clique em Continuar:
Na página Registrar novo dispositivo, revise as informações e clique em Registrar.
Repita as etapas anteriores para qualquer dispositivo iOS em que queira implantar um aplicativo iOS do .NET MAUI.
Criar uma ID do Aplicativo
Depois de adicionar um dispositivo à sua conta de desenvolvedor da Apple, você deve criar uma ID do aplicativo. Uma ID do Aplicativo é semelhante a uma cadeia de caracteres DNS reversa, que identifica exclusivamente um aplicativo e deve ser idêntica ao identificador de pacote do aplicativo.
Importante
O identificador de pacote para um aplicativo do .NET MAUI é armazenado no arquivo de projeto como a propriedade da ID do Aplicativo. No Visual Studio, no Gerenciador de Soluções, clique com o botão direito do mouse em seu projeto de aplicativo .NET MAUI e selecione Propriedades. Em seguida, navegue até a guia Geral > Compartilhado MAUI. O campo ID do Aplicativo lista o identificador do pacote.
Quando o valor do campo ID do Aplicativo for atualizado, o valor do Identificador do pacote no arquivo Info.plist será atualizado automaticamente.
Há dois tipos de ID do Aplicativo:
- Curinga. Uma ID do Aplicativo curinga permite que você use uma única ID do Aplicativo para corresponder a vários aplicativos, e normalmente usa o formato
com.domainname.*
. Uma ID do aplicativo curinga pode ser usada para instalar a maioria dos aplicativos a um dispositivo e deve ser usada para aplicativos que não habilitam recursos específicos do aplicativo. - Explícita. Uma ID do Aplicativo explícita é exclusiva de um único aplicativo e normalmente usa o formato
com.domainname.myid
. Uma ID do aplicativo explícita permite a instalação de um aplicativo, com um identificador de pacote correspondente, em um dispositivo. IDs do Aplicativo explícitas normalmente são usadas para aplicativos que habilitam recursos específicos do aplicativo, como Apple Pay ou Game Center.
A abordagem recomendada é criar uma ID de aplicativo curinga, a menos que seu aplicativo use recursos específicos do aplicativo. Para obter mais informações sobre recursos, confira Recursos.
Uma ID de aplicativo curinga pode ser criada com as seguintes etapas:
Em um navegador da Web, vá para a seção Identificadores da sua conta de desenvolvedor da Apple e clique no botão +.
Na página Registrar novo identificador, selecione IDs do aplicativo e clique no botão Continuar.
Na página Registrar novo identificador, selecione o tipo de Aplicativo e clique no botão Continuar.
Na página Registrar uma ID do aplicativo, forneça uma Descrição e defina a ID do pacote como Curinga. Depois, insira uma ID do aplicativo no formato
com.domainname.*
e clique no botão Continuar:Na página Confirmar ID do aplicativo, revise as informações e clique no botão Registrar.
Criar um perfil de provisionamento de desenvolvimento
Depois que a ID do aplicativo tiver sido criada, você deverá criar um perfil de provisão de desenvolvimento. Um perfil de provisionamento contém informações sobre a que aplicativo (ou aplicativos, se for uma ID do aplicativo curinga) o perfil está relacionado, quem pode usar o perfil (dependendo de quais certificados de desenvolvedor são adicionados) e quais dispositivos podem instalar o aplicativo.
Um perfil de provisionamento de desenvolvimento pode ser criado seguindo estas etapas:
Em um navegador da Web, vá para a seção Perfis da sua conta de desenvolvedor da Apple e clique no botão +.
Na página Registrar Novo Perfil de Provisionamento, na seção Desenvolvimento, selecione Desenvolvimento de Aplicativos iOS e clique no botão Continuar:
Na página Gerar perfil de provisionamento, selecione o ID do aplicativo a ser usado e clique no botão Continuar.
Na página Gerar perfil de provisionamento, selecione os certificados a serem incluídos no perfil de provisionamento e clique no botão Continuar.
Na página Gerar perfil de provisionamento, selecione os dispositivos nos quais o aplicativo será instalado e clique no botão Continuar.
Na página Gerar perfil de provisionamento, informe um nome para o perfil de provisionamento antes de clicar no botão Gerar.
Na página Gerar perfil de provisionamento, você tem a opção de clicar no botão Baixar para baixar o perfil de provisionamento.
Baixar perfis de provisionamento no Visual Studio
Depois de criar um perfil de provisionamento de desenvolvimento em sua conta de desenvolvedor da Apple, o Visual Studio poderá baixá-lo para que ele esteja disponível para assinar o aplicativo:
- No Visual Studio, acesse Ferramentas > Opções > Xamarin > Contas da Apple.
- Na caixa de diálogo Contas de Desenvolvedor da Apple, selecione uma equipe e clique no botão Exibir Detalhes....
- Na caixa de diálogo Detalhes, verifique se o novo perfil aparece na lista Perfis de provisão. Talvez seja necessário reiniciar o Visual Studio para atualizar a lista.
- Na caixa de diálogo Detalhes, clique no botão Baixar todos os perfis.
Os perfis de provisionamento serão baixados no Windows e exportados para o host de build do Mac se o IDE estiver emparelhado com ele. Para obter mais informações, consulte Emparelhar com Mac para desenvolvimento para iOS.
Habilitar o provisionamento manual
Depois de criar manualmente o perfil de provisionamento de desenvolvimento e instalá-lo no Visual Studio, seu projeto de aplicativo do .NET MAUI deve ser configurado para usar o provisionamento manual:
No Gerenciador de Soluções, clique com o botão direito do mouse em seu projeto de aplicativo do .NET MAUI e selecione Propriedades. Em seguida, navegue até a guia Compartilhado com o MAUI > Geral e verifique se o valor do campo ID do aplicativo corresponde ao formato da ID do aplicativo que você criou anteriormente.
Nas propriedades do projeto, navegue até a guia Assinatura de pacote do iOS e verifique se o Provisionamento manual está selecionado no menu suspenso Esquema:
Nas propriedades de Assinatura de Pacote, selecione sua Identidade de Assinatura e Perfil de provisionamento ou defina ambos como Automático. Quando a Identidade de Assinatura e o Perfil de Provisionamento estiverem definidos como Automático, o Visual Studio selecionará a identidade de assinatura e o perfil de provisionamento com base no Identificador do Pacote em Info.plist (que é idêntico ao valor da propriedade ID do Aplicativo no arquivo de projeto).
Implantar no dispositivo
Depois de configurar o provisionamento em seu projeto de aplicativo do .NET MAUI, o aplicativo poderá ser implantado em um dispositivo com o Visual Studio:
No Visual Studio, certifique-se de que o IDE esteja emparelhado com um host de build do Mac. Para obter mais informações, consulte Emparelhar com Mac para desenvolvimento para iOS.
Certifique-se de que seu dispositivo iOS esteja conectado ao host de build do Mac via USB ou WiFi. Para mais informações sobre implantação sem fio, confira Implantação sem fio de aplicativos iOS do .NET MAUI.
Na barra de ferramentas do Visual Studio, use a lista suspensa Destino de Depuração para selecionar Dispositivos Remotos iOS e, em seguida, o dispositivo que está conectado ao host de build do Mac:
Na barra de ferramentas do Visual Studio, pressione o botão verde Iniciar para iniciar o aplicativo no seu dispositivo remoto:
Observação
Uma abordagem alternativa para implantar um aplicativo iOS do .NET MAUI em um dispositivo é usar a reinicialização dinâmica. A reinicialização dinâmica permite que você implante um aplicativo do .NET MAUI em um dispositivo iOS local de 64 bits a partir do Visual Studio, sem necessidade de um host de build do Mac. Para mais informações, confira Implantar um aplicativo iOS usando a reinicialização dinâmica.
Provisionamento para serviços de aplicativo
A Apple fornece uma seleção de serviços de aplicativo, chamados de recursos, que podem ser ativados para o aplicativo iOS do .NET MAUI. Esses recursos devem ser configurados no perfil de provisionamento, quando a ID do aplicativo é criada, e no arquivo Entitlements.plist que deve ser adicionado ao projeto de aplicativo do .NET MAUI. Para mais informações sobre recursos, confira Direitos e Recursos.