Estou recebendo este erro:
Erro de CodeSign: a identidade do certificado 'iPhone Developer: XXX' aparece mais de uma vez nas chaves. A ferramenta de codesign requer que haja apenas um.
No começo, não se preocupe, vou apenas entrar no chaveiro e excluir o duplicado (mais antigo), o que fiz. Voltei, fechei o Xcode, reabri o Xcode e o projeto, mesmo erro. wtf eu pensei para mim mesmo. Volte para as chaves e o certificado está lá novamente. Excluo ambos os certificados, repito e observo que, conforme o projeto é carregado, os dois certificados que excluí voltam para o chaveiro.
Depois de muita pesquisa, assegurei-me de que não tinha o certificado nas chaves do sistema, o que não era verdade. Também fiz uma limpeza e reconstrução. Quando eu tinha duplicatas com o Xcode 3, eu podia simplesmente limpar a duplicata do chaveiro e estava tudo bem. Mas com o Xcode 4 ele literalmente os reinstala de alguma forma quando eu abro o projeto. Eu até apaguei todos os arquivos .cer em meu sistema dos quais ele poderia estar puxando.
Alguma sugestão?
fonte
Respostas:
A solução foi entrar no organizador - na biblioteca - perfis de provisionamento, excluir todos eles e reinstalar todos os perfis de que ainda precisava.
fonte
Eu tive esse mesmo problema e as soluções acima não resolveram meu problema (bem quase).
Eu tinha o mesmo ID de desenvolvedor / certificado duplicado do qual todos estão reclamando e tentei excluir todos os meus perfis, revogar / reemitir meu certificado, certificando-me de que não havia nenhum no keychain do sistema, reiniciando, etc. etc.
No final, acabou por não era um certificado no chaveiro do sistema, que tinha expirado e por isso foi escondido por padrão na lista.
Certifique-se de ver os certificados expirados no KeyChain
Para fazer isso:
fonte
O Xcode 4 tem um novo recurso "Provisionamento Automático de Dispositivo". Ele está localizado no organizador em perfis de biblioteca / provisionamento. Se você habilitou isso, ele baixará automaticamente seus perfis de provisionamento do servidor de provisionamento do desenvolvedor da apple e, portanto, você receberá o erro de ter duplicatas. A maneira mais fácil de corrigir isso é excluir todos os perfis de provisionamento e pressionar atualizar para o "Provisionamento automático de dispositivos". Isso carregará seus perfis de provisionamento do servidor e resolverá o problema.
fonte
se quiser mexer no acesso do keychain para remover o certificado expirado, você pode tentar o seguinte:
o certificado expirado desaparece junto com as chaves. funcionou perfeitamente para mim.
fonte
- EDITAR -
Merge a resposta de @Codezy e o comentário de @ iphone007.
fonte
Excluindo perfis de provisionamento na biblioteca do Organizer, além disso, você deve excluir o certificado de desenvolvedor do iPhone no Keychain Access. (O nome do certificado é provavelmente como "Desenvolvedor iPhone: XXXXX ..." e indicado pelo sinal de X vermelho, pois expirou)
fonte
Passei meio dia para isso e finalmente encontrei a solução
Em seguida, feche Keychain.app e vá para Xcode -> Organizer
Construa novamente seu aplicativo :)
fonte
Para a posteridade, esta é a estratégia para contornar esse problema em nosso script de construção automatizado:
fonte
Eu tentei tudo sugerido aqui, mas nada funcionou para mim, exceto reinstalar o XCode 4.3 resolvido magicamente.
fonte
Descobri uma maneira realmente fácil de consertar isso em 4.6.1. Você pode fazer isso sem reiniciar nada ou excluir perfis!
Com o Keychain Access e seu projeto Xcode aberto:
Espero que ajude!
fonte
o método acima não funciona para o meu caso
finalmente, eu vou para o chaveiro
e procure a chave digitando o nome
Finalmente encontrei o certificado que deveria ser excluído antes. então eu apaguei e o problema foi resolvido
é realmente frustrante, e não sei se é o bug ... realmente exaustivo.
fonte
Citando uma resposta a uma duplicata desta pergunta, alguns dos bugs do Xcode nesta área só podem ser resolvidos reiniciando o OS X .
No final, obtive sucesso excluindo tudo o que foi mencionado em qualquer uma das respostas a esta pergunta, reiniciando e instalando manualmente as partes de que precisava (não confiei / tentei o recurso de download automático de perfil / certificado).
fonte
Pelo que vale a pena, @AndreasPrang, sua resposta funcionou quando todas as opções acima não funcionaram. Pude ver que o certificado expirado não estava em nenhum lugar do keychain, mas quando fiz uma compilação, o Xcode disse que estava. Excluir os perfis de provisionamento (todos eles), selecionar meu nome na seção Equipe e clicar no ícone de atualização no canto inferior direito do organizador também não ajudou. Reiniciar o Xcode não ajudou, mas desligar o XCode, excluindo ~ / Library / Developer / Xcode sim. Quando reiniciei o XCode, ele reconstruiu tudo e ficou feliz.
fonte
O outro motivo pelo qual xcode continua instalando seu certificado é porque você não excluiu a chave, apenas o certificado. Você precisa excluir a chave privada (e a chave pública correspondente), bem como o certificado nas chaves, caso contrário o xcode reinstalará o certificado.
Verifique aqui Para remover certificados de desenvolvimento e distribuição de suas chaves
fonte
Acabei de instalar o Xcode 4.6.1 e comecei a ter esse problema novamente. A última vez foi há muito tempo. Excluí os antigos perfis de provisionamento e os certificados, mas ainda não consegui criar.
Desta vez, descobri que tinha 2 certificados listados para mim na conta da equipe do portal do desenvolvedor. O primeiro expirou, o segundo não. O Xcode continuou pegando o primeiro que encontrou enquanto atualizava (ou talvez ambos).
Eu apaguei os dois certificados do chaveiro, baixei manualmente o certificado correto do portal da Apple e o adicionei manualmente ao chaveiro. Agora posso construir novamente.
(E enviei uma solicitação ao administrador da equipe para remover o certificado antigo.)
fonte
Construir...
fonte