O Xcode 8 mostra o erro de que o perfil de provisionamento não inclui o certificado de assinatura.
Esse problema ocorre no Xcode-8 somente no Xcode 7, o mesmo perfil de provisionamento mostrando o certificado identificado relacionado.
ios
iphone
xcode8
provisioning-profile
Satish Mavani
fonte
fonte
Respostas:
Existem várias maneiras de corrigir isso, como ativar a assinatura automática, etc. Mas se você quiser entender o motivo desse erro, consulte a mensagem de erro.
Ele diz que o perfil de provisionamento que você selecionou na "guia Geral" não contém o certificado de assinatura selecionado em "Configurações de compilação" -> "Identidade de assinatura de código".
Normalmente, isso acontece se um certificado de distribuição tiver sido selecionado para a identidade de depuração em "Configurações de compilação" -> "Identidade de assinatura de código".
Se isso acontecer em "Assinatura (depuração)", também poderá ser que "Identidade de assinatura" -> "Desenvolvimento iOS" não esteja incluído no perfil de provisionamento.
fonte
Verifique no seu chaveiro as identidades que estão faltando uma chave privada. Eu tinha vários certificados de distribuição instalados para a mesma equipe, um dos quais estava faltando a chave privada. O Xcode estava apenas checando a primeira identidade correspondente no chaveiro e usando-a automaticamente em oposição à que incluía a chave privada.
A remoção da identidade correspondente que não tinha uma chave privada fez o Xcode detectar a identidade correta novamente.
fonte
Para consertar isso,
Eu apenas ativei o "Gerenciamento automático de assinatura" na guia geral de configurações do projeto. Antes de ativar, eu tinha medo de que ele pudesse ter alguns efeitos colaterais, mas, uma vez ativado, isso funciona para mim.
Espero que isso ajude os outros!
fonte
Para aqueles que devem continuar usando não auotamatic por algum motivo
Abra o keyChain Access para ver se há duas mesmas certificações. Se houver duas ou mais, basta excluir uma e ela funcionará :)
fonte
Eu enfrentei esse problema após atualizar recentemente o Xcode para a versão 9.3. O problema estava no certificado de assinatura de código (em depuração) definido como certificado de distribuição em vez de certificado de desenvolvimento, o que me impediu de instalar o aplicativo nos meus dispositivos.
Aqui está o que eu fiz para resolver esse problema.
Projeto -> Alvos -> Selecione seu aplicativo -> Configurações de compilação -> Identidade de assinatura de código -> Depuração -> Toque duas vezes em "Distribuição do iPhone" e altere-o para "Desenvolvedor do iPhone".
fonte
Desmarquei e marquei a opção "Gerenciar assinatura automaticamente". Isso consertou para mim.
fonte
Pelo que vale a pena, a assinatura automática falhou todas as vezes até que eu excluísse manualmente os perfis locais em: ~ / Library / MobileDevice / Provisioning Profiles
Depois disso, a assinatura automática funcionou perfeitamente e obteve os perfis certos nos servidores da Apple.
Isso estava afetando apenas algumas versões, especialmente aquelas para as quais eu havia criado perfis manualmente para o aplicativo de exibição.
fonte
CMD + Shift + .
para mostrar todos os arquivos ocultos.Para quem ainda luta com esse problema no Xcode8. Para mim, havia um problema duplicado de certificado, é assim que eu resolvi:
Li a resposta de Nick e comecei minha investigação. Eu verifiquei todas as chaves e certificados no meu caso particular (dentro de ~ / Library / Keychains / System.keychain).
Quando abri o arquivo, descobri que tinha dois certificados de distribuição do iPhone (que era o certificado que o Xcode estava me solicitando), um com a chave privada de distribuição do iOS que eu uso desde o início e outro certificado de distribuição do iPhone que é seu A chave privada tinha um nome (distribuição iOS: NAME) que não me era familiar. Excluí este último certificado, iniciei o Xcode novamente e o problema desapareceu. O xCode não conseguiu resolver esse conflito e por isso estava dando erro de certificado de assinatura o tempo todo.
Verifique suas chaves, talvez você tenha um certificado duplicado.
fonte
Se você usar assinatura manual (o que eu recomendaria definitivamente), esse erro poderá ocorrer porque o Xcode acha que deve assinar uma compilação de versão com um certificado de desenvolvedor, que obviamente não está incluído em um perfil de provisionamento de versão.
Há uma configuração de compilação que define qual certificado deve ser usado para qual configuração de compilação. Para alterá-lo, vá para criar configurações e procure por Identidade de assinatura de código . Quando expandido, deve haver linhas separadas para cada configuração de compilação (geralmente Debug and Release) com na segunda coluna sua identidade selecionada (geralmente iOS Developer ou iOS Distribution). Verifique se está definido com a identidade correta para cada configuração de compilação.
Em alguns casos, as configurações de compilação também podem ser expandidas. Verifique se os subitens também estão definidos com as identidades corretas.
fonte
Você também pode resolver problemas de assinatura de código com o excelente kit de ferramentas Fastlane . Os autores se esforçam muito para automatizar efetivamente a construção, assinando aplicativos iOS (e mais).
Portanto, no conjunto mencionado, existe uma ferramenta
sigh
que resolve magicamente quaisquer problemas de assinatura, daí o nome :) O interessante é que essa ferramenta encapsula um conhecimento sobre problemas comuns de assinatura e pode detectar e resolver a maioria deles.O Fastlane é instalado como gem Ruby:
gem install fastlane
E então simplesmente invocado:
fastlane sigh --development
Responda a duas perguntas e pronto:
Por fim, vá para Build Settings -> Signing e mude para o perfil de provisionamento recém-criado, cujo nome você acabou de ver na saída do comando.
Este exemplo é para um problema de assinatura de código de desenvolvimento (em execução no dispositivo). Verifique a documentação do suspiro para todas as outras opções.
fonte
Teve o mesmo erro. Perfis parece renovado, novos certificados adicionados, eu até chequei quando o download. Também revogou certificados de ex-desenvolvedor, excluídos do perfil de provisão. Mas o Xcode ainda me pergunta sobre certificados anteriores com erro:
então, o que eu fiz para corrigi-lo:
Build Settings
->Signing
->Code Signing Identity
Espero que ajude alguém.
fonte
No meu caso, no chaveiro, eu tinha dois certificados com o mesmo nome, removi um do certificado duplicado e resolvi o problema.
fonte
"Ativar assinatura automática" e, em seguida, selecionar uma equipe no menu suspenso me ajudou com esse problema exato.
fonte
fonte
Xcode 11
Este é o erro que recebi
Agora, o Xcode 11 criou automaticamente um certificado "Apple Development: XXX", válido para todas as plataformas
Você só precisa
fonte
Eu tinha as chaves privadas restantes dos certificados revogados, os certificados haviam sumido, mas não as chaves privadas. A exclusão deles resolveu o problema.
Para encontrá-los:
A chave destacada na imagem é uma chave privada de amostra sem certificado.
fonte
Eu tenho o mesmo problema. Eu mudei o mac. E quando baixei o certificado Xcode, recebi uma mensagem de erro: "O erro é que o perfil de segurança não inclui a assinatura do certificado".
1) Acesse https://developer.apple.com/account/ios/profile/limited/edit Selecione o projeto => edit => Certificates => Certificates => Select All => Create => Download
2) No Xcode: arquivo de projeto => assinatura (depuração) => perfil de provisionamento => perfil de importação => selecionar arquivo com 1
fonte
Para mim, nenhuma das soluções acima funcionou. Eu estava migrando de dois macs mais antigos para um novo, tentando obter perfis de liberação / depuração trabalhando no Xcode SEM o Xcode gerenciando-os automaticamente.
A solução para mim foi que, quando criei os dois novos Certificados, também precisei entrar em meus perfis de provisionamento e adicionar (sob a distribuição e o desenvolvimento) os novos certificados aos perfis de provisionamento para reconhecê-los. Depois de fazer isso e fazer o download, o xcode removeu todos os erros e é bom continuar.
Espero que isso ajude alguém!
fonte
Eu recebi um desses e-mails da Apple:
Criei um novo certificado que revogava o certificado anterior (localmente e no Mac de qualquer outro desenvolvedor). Para que ele funcione, preciso baixar os novos perfis de provisão.
A solução é:
Eu pessoalmente não tinha esse acesso. Esse acesso estava disponível apenas para o administrador da nossa equipe, portanto, não tenho capturas de tela nem tenho certeza se essas etapas estão 100% corretas.
fonte
Ainda não vi isso mencionado, mas se você ainda estiver com problemas após recriar seus perfis de provisionamento, excluir os existentes na pasta Perfis de provisionamento, verificar se há dupes em seu chaveiro, etc. (todas as outras respostas ITT), abra seu Alvo> Configurações de compilação> Assinatura de código e verifique se tudo parece consistente lá. Por exemplo, eu havia alterado o Código de Identificação e Identificação para Depuração para uma identidade de Distribuição, que obviamente não funcionaria, pois o Perfil de Provisionamento de Desenvolvimento não possui o certificado de Distribuição e estava causando o erro em primeiro lugar.
fonte
Se você estiver tentando carregar seu aplicativo no iTunes Connect (seus perfis de provisionamento estão definidos como Distribuição), vá para Configurações do projeto -> Configurações da compilação -> Assinatura de código. Certifique-se de definir todas as opções de depuração e versão como seu perfil de provisionamento de distribuição.
fonte
O problema parece começar a acontecer no Xcode 11 .
vá para Xcode -> Preferências-> Contas-> Baixar perfis do manual
fonte
Aqui estão as etapas resolvidas para mim (para aqueles que enfrentam o mesmo problema no XCode 9.2):
Apenas exclua manualmente os perfis locais em ~ / Library / MobileDevice / Provisioning Profiles.
Excluiu e criou todos os certificados e perfil de provisionamento da conta de desenvolvedores.
A conta de desenvolvedores foi removida do Xcode e a adicionou novamente.
Resolvido meu problema! :-)
fonte
Clicar e depois cancelar "Ativar assinatura automática" funcionou para mim, embora a alteração real tenha sido:
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ou no Xcode é chamado
Always Embed Swift Standard Libraries
fonte
Eu tive o mesmo problema e o motivo era centavo. Perfil e certificado incorretos foram selecionados nas configurações de compilação. Eu só tinha feito isso antes de alguns dias. Portanto, você não precisa habilitar "automático" dentro do xcode. Verifique os perfis dentro de suas configurações de compilação antes de fazê-lo.
fonte
Tente baixar os certificados / perfis diretamente do centro de membros, em vez de fazê-lo no Xcode.
Funcionou para mim quando os baixei manualmente do centro membro.
fonte
Eu estava lutando com isso por muitos dias.
Etapa 1: todos os certificados, perfil de provisionamento, appID, chave etc foram excluídos da conta do desenvolvedor.
Etapa 2: recriou os certificados de notificação por push, perfil de provisionamento, ID do aplicativo etc.
Etapa 3: excluídos todos os certificados do chaveiro.
Etapa 4: limpe todo o perfil de provisionamento de ~ / Library / MobileDevice / Provisioning Profiles.
Etapa 5: adicionado apenas o arquivo de provisionamento necessário e testado. Funciona bem.
fonte
Isso significa que você precisa executar 1 dos itens abaixo:
Uma solução para o item 2 quando você não conseguir obter o certificado & o arquivo .p12 do criador seria apenas marcar a opção 'Gerenciar assinatura automaticamente'.
fonte
Isso acontece porque o perfil de provisionamento não consegue encontrar o arquivo do certificado ao qual está vinculado.
Consertar:
O erro deve ter desaparecido agora.
fonte
Esse problema ocorre porque a chave privada no certificado em seu perfil não corresponde à do seu chaveiro. Eu resolvo isso por
mesma resposta com o problema de assinatura de código no Xcode versão 8 .
fonte