Assinatura de código para iOS
Neste artigo, você aprenderá como usar assinatura de código no iOS. Você precisará assinar seu aplicativo para iOS, se tiver selecionado iOS como uma das plataformas ao criar seu projeto de empacotamento.
Importante
Não há suporte para usar o Xcode para assinar digitalmente seus aplicativos móveis preparados para iOS. Siga as instruções abaixo para assinar corretamente seus pacotes de aplicativos móveis preparados para iOS.
Pré-requisitos
Você precisa das seguintes informações para começar:
- ID do Aplicativo
- UDIDs de dispositivos (somente para fins de teste e desenvolvimento)
Você também precisa de um dispositivo macOS para usar assinatura de código no iOS.
Prepare seu Mac
Configure seu Mac com a configuração a seguir.
- Instale Xcode. Mais informações: Xcode
- Instale o PowerShell para macOS. Mais informações: Instalação do PowerShell no macOS
- Inscrever-se no Programa para desenvolvedores da Apple
- Para distribuir seus aplicativos dentro da organização, você precisa se inscrever no Programa para desenvolvedores corporativos da Apple.
Criar ID do aplicativo
Faça logon na sua conta de desenvolvedor acessando https://developer.apple.com e selecionando a guia Conta.
Selecione + para criar um identificador.
Selecione IDs de aplicativo e depois Continuar.
Selecione o tipo como Aplicativo e depois Continuar.
Registre um ID do Aplicativo:
- Descrição: nome do seu aplicativo.
- ID do pacote: selecione ID do pacote explícito.
- Insira a ID do pacote que você usou ao criar o projeto de empacotamento. Mais informações: ID do pacote
- Habilite os seguintes recursos:
- Domínios associados
- iCloud
- Leitura de marcas NFC
- Notificações por push
- Selecione Continuar.
Revise e registre a ID do aplicativo.
Criar um certificado de distribuição
Para criar um certificado de distribuição, crie primeiro uma solicitação de assinatura de certificado.
Criar Solicitação de Assinatura de Certificado (CSR)
No seu computador Mac, vá para a pasta Aplicativos > Utilitários > abra Acesso ao Conjunto de Chaves.
Selecione Acesso ao conjunto de chaves > Assistente de certificados > Solicitar um certificado de uma autoridade de certificação.
Preencha as Informações do certificado conforme explicado abaixo e selecione Continuar.
- No campo User Email Address, digite o endereço de email do seu Apple ID para se identificar com esse certificado.
- No campo Nome Comum, digite seu nome.
- No grupo Solicitação, selecione Salvo em disco.
- Salve o arquivo no seu computador Mac.
Criar o certificado de distribuição
Entre na sua conta de desenvolvedor em https://developer.apple.com selecionando a guia Conta.
Acesse Certificados, IDs e perfis > Certificados.
Selecione + para criar um certificado.
Selecione App Store e Ad Hoc > Continuar.
Observação
Se você tiver uma conta de desenvolvedor corporativo, terá a opção de criar um certificado de distribuição corporativo.
Carregue o arquivo de solicitação de assinatura de certificado (CSR) que foi gerado nas etapas anteriores.
Selecione Continuar e baixe o certificado em seu computador Mac.
Clique duas vezes no arquivo .cer baixado para instalar no Acesso ao Conjunto de Chaves.
Anote o Nome do certificado (geralmente como Distribuição do iPhone: Nome (ID da equipe)). Esse valor é a identidade de assinatura de código que precisa ser fornecida para assinatura.
Adicionar todos os dispositivos onde o IPA precisa ser instalado
Observação
Esta etapa sé necessária somente se você estiver distribuindo o aplicativo para usuários externos. Ela não será necessária se o aplicativo for apenas para usuários internos.
Entre na sua conta de desenvolvedor em https://developer.apple.com selecionando a guia Conta.
Selecione + para registrar um ou mais dispositivos.
Insira o Nome do Dispositivo e ID do dispositivo (UDID).
Selecione Salvar.
Dica
Você também pode registrar vários dispositivos juntos carregando uma lista de UDIDs.
Criar um perfil de provisionamento do iOS
Faça logon na sua conta de desenvolvedor acessando https://developer.apple.com e selecionando a guia Conta.
Vá para Certificados, IDs e perfis > Perfis.
Selecione + para criar um perfil.
Selecione Ad Hoc > Continuar.
Observação
Para fins de teste e desenvolvimento de produção, use o método de distribuição App Store.
Selecione a ID do aplicativo que você criou anteriormente e escolha Continuar.
Selecione o certificado que você criou anteriormente e escolha Continuar.
Selecione todos os dispositivos de teste onde você deseja instalar seu aplicativo e escolha Continuar.
Revise e nomeie o perfil de provisionamento. Anote o nome do perfil de provisionamento.
Gere e baixe o perfil para o seu Mac.
Clique duas vezes para abrir o arquivo baixado (*.mobileprovision) para registrá-lo no Xcode.
Assinar o arquivo iOS
Baixe e descompacte o arquivo iOS-Archive.zip no App Center. Isso cria uma pasta nomeada com base na ID do Pacote. No exemplo abaixo, a ID do Pacote é com.single.wrap.
Se entrar com certificado corporativo, abra o arquivo Distribution-exportOptions.plist com Xcode e altere o valor do campo método dentro do arquivo para corporativo.
Observação
Não há suporte à assinatura do Enterprise com a assinatura do Key Vault.
Abra o terminal e altere o diretório para a pasta descompactada.
Insira
pwsh
para iniciar o PowerShell no terminal.Execute
./SignAndGenerateIPA.ps1
com os valores para os parâmetros "CodeSigningIdentity" e "ProvisioningProfilePath".Observação
'CodeSigningIdentity' é o nome do certificado que foi criado no site do desenvolvedor da Apple. Para procurar o valor de 'CodeSigningIdentity', clique com o botão direito do mouse no arquivo .mobileprovision (este é o perfil de provisionamento) e selecione Mais informações. Role para baixo e selecione Visualizar. Seu valor de 'CodeSigningIdentity' é armazenado no campo Nome em Certificados no arquivo .mobileprovision.
Dica
'ProvisioningProfilePath' é o caminho para o arquivo de perfil de provisionamento que você baixou do site do desenvolvedor da Apple na etapa anterior Criar um perfil de provisionamento iOS. Por exemplo, ele pode estar localizado em /Usuários/nome do usuário/Downloads/MyProvisioningProfile.mobileprovision em seu computador.
Quando o script termina, um arquivo .ipa é criado, como com.single.wrap.ipa.
- Se houver falha no comando ./SignAndGenerateIPA.ps1, exclua a pasta e os arquivos descompactados porque eles podem estar corrompidos. Descompacte iOS-Archive.zip novamente antes de tentar entrar novamente.
Instale o arquivo .ipa nos dispositivos registrados usando o aplicativo Finder. Você também pode hospedá-lo em um serviço de distribuição, como App Center. Para distribuir usando o Microsoft Intune, consulte Adicionar um aplicativo de linha de negócios iOS/iPadOS para Microsoft Intune. Para saber como conceder a um aplicativo acesso ao serviço de proteção de aplicativo do Intune, consulte Conceder ao seu aplicativo acesso ao serviço de proteção de aplicativo do Intune.