A identidade usada para assinar o executável não é mais válida

173

Eu tenho um aplicativo que estou depurando no iPad. 2 dias atrás, eu queria depurar um mesmo aplicativo atualizado, mas estou tendo esse erro.

A identidade usada para assinar o executável não é mais válida.

Verifique se o relógio do seu dispositivo está ajustado corretamente e se o seu certificado de assinatura não está vencido.

(0xE8008018).

Ainda não tenho o certificado de desenvolvedor do iPhone, mas depurei este jogo uma vez.

Hayk Melkonyan
fonte

Respostas:

94

Tente reiniciar o XCode. Funcionou para mim.

Namratha
fonte
1
Funciona para mim também. comando + Q para sair do XCode e reiniciar. Felicidades!
Joey
9
Eu tive que excluir todos os certificados / perfis manualmente e também atualizar tudo no portal de desenvolvedores da Apple e baixá-los novamente, mas funcionou.
Benka
7
Apenas aconteceu comigo com o 6.1 mais recente. Reiniciar o XCode e excluir os "dados derivados" do Projeto não fizeram diferença. Eu detesto muito esse desagradável ambiente de desenvolvimento desatualizado.
Mike Gledhill
81
Reiniciar o Xcode não funcionou para mim. O que o corrigiu foi acessar Contas no Xcode (nas preferências), Detalhes da minha conta de desenvolvedor e clicar no ícone de atualização no canto inferior esquerdo. Isso carregou um novo perfil de provisionamento de equipe, que aparentemente era necessário ... sim. Não devemos ter que lidar com essa Apple. A Microsoft costumava fazer isso com desenvolvedores, não vá lá.
precisa saber é o seguinte
2
@ Eskim0 Sua correção funcionou para mim depois que eu tive o mesmo problema depois de converter de uma conta pessoal para comercial.
Rogare
234

Nem reiniciar o Xcode nem reiniciar o meu Mac ajudaram.

Solução no Xcode:

  1. No Xcode, vá para Preferências -> Contas -> Visualizar detalhes
  2. Pressione o símbolo + e selecione Desenvolvimento iOS
  3. Pressione o botão de atualização no canto inferior esquerdo (chamado Download allno Xcode 7)

PS:

  • Às vezes, também pode ajudar a excluir perfis de provisionamento inválidos: clique com o botão direito do mouse -> mover para a lixeira
  • Vi esse erro exatamente um ano depois de me inscrever como desenvolvedor da Apple.
vomako
fonte
14
Obrigado! Isso funcionou para mim, só que eu não precisava passo 2.
sup
3
Obrigado! Provavelmente, esse problema ocorre uma vez por ano após a data da inscrição.
Sergey Neskoromny 8/15
3
Obrigado! Reativei minha inscrição e enfrentei esse problema. Este me ajudou.
Nhon Nguyen
1
Resposta correta hoje em dia
Fede Cugliandolo 15/15
1
Para mim, apenas ajudou a excluir todos os arquivos de provisionamento baixados e deixar o Xcode "Corrigir problemas".
Lars Blumberg
59

Isso pode acontecer quando seu certificado expirar em seu chaveiro.

EDIT : agora eu recomendo o cert e suspiro para gerar seus certificados e perfis de provisionamento. Estes são dois comandos parte dos Fastlane ferramentas de KrauseFx.

Usando cert & suspiro:

  1. Abra um terminal e digite cert
  2. Responda às perguntas solicitadas para selecionar seu usuário, senha, equipe, aplicativo etc.
  3. Abra um terminal e digite sigh
  4. Responda às perguntas solicitadas para selecionar seu usuário, senha, equipe, aplicativo etc.
  5. Selecione o perfil correto em Identidade de assinatura de código (iPhone Developer)

Maneira convencional:

  1. Basta acessar o novo portal de provisionamento: Certificados, Identificador, Perfis
  2. Entre com sua conta de desenvolvedor.
  3. Vá para Certificados e clique no botão Mais.
  4. Em seguida, selecione iOS Apps Development e clique em Continue.
  5. Siga todo o processo e faça o download do certificado recém-gerado.
  6. Faça o download e coloque-o em seu chaveiro.
  7. Atualize seus perfis na janela de dispositivos do XCode Organizer
  8. Selecione o perfil correto em Identidade de assinatura de código (iPhone Developer)
dulgan
fonte
1
Eu segui o processo acima, ele solicitará Revogar e Solicitar. Se eu revogar esse certificado, há algum efeito na distubução?
SP Balu Kommuri
1
Não vai afetar todos os apps que já estão na AppStore, mas você vai ter de se regenerar a cada perfis de aprovisionamento através do seu novo certificado para uso futuro (ou seja, compilação)
dulgan
Isso significa que se eu usar para o desenvolvimento futuro do meu aplicativo. Eu quero usar o perfil de provisionamento recém-criado, está correto. @dulgan
SP Balu Kommuri
Sim, tudo o que você já desenvolveu ainda funcionará, mas todos os perfis de provisionamento criados com seus certificados antigos expirarão. Perfis de aprovisionamento são usados somente quando você instala o aplicativo através do Xcode, pelo ar ou quando você envia aplicativo para iTunesConnect
dulgan
Obrigado @dulgan a partir de agora eu uso o novo certificado revogado com o novo perfil de provisionamento, não haverá problema. ok .....
SP Balu Kommuri
22

Se todos os acima sugestões anteriores falhar depois de renovar o seu certificado, como fizeram para mim, navegue para o seguinte local;

~ / Library / MobileDevice / Perfis de provisionamento

... e exclua seus perfis de fornecimento.

Em seguida, faça o download do seu perfil de provisionamento novamente em;

https://developer.apple.com/account/ios/profile/profileList.action

AnthonyBlake
fonte
6

Se você estiver usando o jailcoder, certifique-se de desbloquear o iphone com êxito. Não se esqueça de instalar o AppSync for IOS no Cydia.

Andrew
fonte
Existe um local respeitável para obter o AppSync?
newenglander
5

Na atualização mais recente do xcode, esse problema geralmente ocorre quando o seu certificado expira e o xcode continua a usar o antigo até que ele expire.

Fechar o xcode e abri-lo novamente desencadeará um processo automático de download do seu novo certificado e do funcionamento do aplicativo.

Apenas feche o xcode logo abaixo (Cmd + Q) e abra-o novamente, carregue seu projeto e pressione play .. ele perguntará se você gostaria de assistência para corrigir automaticamente o problema do certificado, basta seguir as instruções na tela e faz todo o trabalho duro para você :)

Kevin S
fonte
5

Você tem seus perfis de provisionamento desatualizados.

  1. xcode
  2. Preferências
  3. Contas
  4. Selecione seu ID de maçã
  5. Exibir detalhes (canto inferior direito)
  6. Baixar tudo
  7. Corra novamente e pronto!
Sebastián Lara
fonte
Funciona para mim! Eu importados perfil de desenvolvedor de outro computador
FlySoFast
Funciona para mim, obrigado ... Dangit Apple, por que tantos lugares para ficar preso?
Kyle Pennell
4

Essa pode ser uma abordagem empírica, mas vale a pena diante de muitos comentaristas, observando "isso funcionou para mim" ou "isso não funcionou para mim". Em primeiro lugar, o problema pode estar em vários locais, nos seus certificados (identidades de assinatura de código) ou nos perfis de provisionamento. Identificar onde está o problema antes de fazer qualquer coisa economizará muito esforço desperdiçado. Você precisará fazer check-in em três locais:

  1. XCode
  2. Acesso ao chaveiro
  3. O Portal do Desenvolvedor (Centro de Membros do Desenvolvedor)

OK, no XCode, clique no projeto (Acima do título dos alvos), selecione Configurações de compilação e role para 'Assinatura de código'. Expanda o cabeçalho 'CODE_SIGNING_IDENTITY' e você verá várias identidades (Depuração, Liberação etc.). Cada uma delas corresponderá a um certificado no Keychain Access. Encontre a correspondência e verifique a data de validade ... se ela expirou, será necessário atualizá-la no Portal do desenvolvedor e fazer o download. Verifique TODAS as identidades, não apenas a primeira que você encontrou que expirou. Além disso, se ele expirou, será necessário gerar novamente qualquer perfil de provisionamento que usou o certificado expirado. Se não houver problemas com os certificados, verifique a data de validade de todos os perfis de provisionamento. Mais uma vez, se eles expiraram, eles precisarão ser regenerados.

Depois de concluído, repita o mesmo processo para o TARGET para o qual você está tentando construir.

Nada disso funcionou? Um certificado expirado está oculto em um dos seus perfis de fornecimento. Um sinal de que esse pode ser o caso é que, quando você clica em um CODE_SIGNING_IDENTITY, a identidade está abaixo de Outro ... por exemplo.exemplo xcode de identidade desonesta

Geralmente, esse é um sinal claro de que existe um certificado expirado e que um dos seus perfis está usando.

arcady bob
fonte
3

Eu enfrentei esse problema quando minha assinatura expirou e a renovei. Eu uso o xCode6 e resolvo esse problema revogando o certificado de desenvolvedor expirado da Central de Membros e limpando a pasta de criação (alt + [Produto> Limpar]). O xCode manipula outros problemas.

Consulte a seção " Substituindo certificados expirados " neste link: https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html

CoyBit
fonte
3

Eu tive esse problema com o XCode 6.3 Abaixo estão as etapas que funcionaram para mim.

Vá para XCode > Preferences > AccountsSelecione sua conta de desenvolvedor e clique View Details...em Clique no refreshbotão na parte inferior esquerda da janela. Ele deve notificá-lo de que faltam alguns certificados. Clique em Request. O XCode deve automaticamente baixar os certificados ausentes. Clique Donee deve funcionar.

u54r
fonte
2

você o depura no simulador apenas se não tiver o certificado de desenvolvedor do iPhone. verifique no canto esquerdo do xcode você seleciona simulador e não dispositivo.

priyanka
fonte
depurei no simulador e depurei no iPad também, mas há 2 dias não sei o que aconteceu e tenho esse erro.
Hayk Melkonyan
2

Enfrentei o mesmo problema, excluí todos os ativos de provisionamento do xcode e os adicionei de volta e apenas reiniciei o Xcode.

Meu aplicativo foi carregado no dispositivo e funcionou.

Jyothi Swaroop
fonte
2

Isso também acontece se o seu certificado de desenvolvedor expirar. Hora de pagar a maçã e renová-la: P

Raj Pawan Gumdal
fonte
2

Primeiro: vá para criar configurações e verifique se sua identidade de assinatura de código válida foi escolhida. Se isso não ajudar, tente as coisas mais complicadas

raio cerebral
fonte
Funciona. Eu tenho certificado antigo e novo. Novo definido nas configurações de compilação.
precisa saber é o seguinte
2

No meu caso, essa mensagem de diálogo funcionou

A identidade usada para assinar o executável não é mais válida.

Verifique se o relógio do seu dispositivo está ajustado corretamente e se o seu certificado de assinatura não está vencido.

(0xE8008018).

Meu certificado no Keychain Access recebeu o status de não ser válido ainda na cor vermelha com vencimento em cerca de um ano e uma hora no futuro. Defino meu horário com uma hora de antecedência e o status do certificado se torna válido na cor verde. Portanto, qualquer pessoa aqui fora que pense que a solução é a reinicialização do xcode não está correta, mas seria o tempo decorrido da reinicialização do xcode para tornar o certificado válido. Assim, ao clicar no botão Corrigir problema , é revogado e cria-se um novo certificado com exatamente um ano de antecedência (mais alguns minutos, dependendo das localidades para aumentar esse problema).

zeeawan
fonte
2

Esta resposta é exatamente um trabalho para mim.


Não foi possível reiniciar o Xcode nem reiniciar o meu Mac.

Solução no Xcode:

In Xcode, go to Preferences --> Accounts --> View Details
Press the + symbol and select iOS Development
Press the refresh button in the lower left corner (called Download all in Xcode 7)

PS:

Sometimes it may also help to delete invalid provisioning profiles: right-click -> move to trash
I saw this error exactly one year after signing up as an Apple developer.

*** O que eu quero saber é por que esse problema ocorre com frequência depois de novembro de ps: Minha conta de desenvolvedor da Apple está se inscrevendo há vários anos.

magicya
fonte
2

Minha solução, depois que nada mais funcionou, foi acessar o Keychain Keychain e excluir todas as chaves / certificados de "desenvolvedor iOS" e deixar o Xcode regenerá-los.

maniek
fonte
Teve que se livrar do "iPhone Developer" também.
Rdackhouse # 28/16
1

Tente definir a hora no dispositivo móvel e no Mac para "definir data e hora automaticamente" na caixa de seleção e reinicie o xcode, que fez isso por mim

Waqleh
fonte
1

O problema aqui é que seu perfil foi construído em um certificado expirado

-para você entrar no portal do desenvolvedor e renovar seu certificado se ele expirou

- em seguida, gere novamente o perfil para que ele seja reeditado no novo certificado

sugiro usar a ferramenta de utilitário de configuração do iPhone para gerenciar perfis no seu mac

Omar Freewan
fonte
1

Se o seu certificado não estiver instalado localmente. Ou você tentou executar o certificado e optou por "revogar e solicitar" um novo certificado, então você tem a opção de fazer isso na máquina em que está tentando executar

vá para Preferências-> Contas-> em seu AppleId -> Visualizar detalhes -> ao assinar identidades, você pode ver o status do seu certificado "Válido" ou "Revogado" se revogado e desejar solicitar um novo, vá para -> + então -> o tipo de distribuição que você está tentando usar.

Daisy R.
fonte
0

No Xcode 5.1 - há uma área de auto-ajuda que fez o trabalho para mim.

Você o encontrará na seção Geral depois de clicar no nome do seu projeto em> Destinos. Você deve ver um ícone de aviso e uma descrição do problema na seção Identidade (exatamente onde digita seus números de versão / compilação).

Ele notou que não havia certificado atualmente armazenado e, através de algumas caixas de auto-ajuda e uma alteração na minha senha, eu consegui.

Chris Lambrou
fonte
0

Estas foram as razões pelas quais tive esse erro:

O ID do aplicativo não teve meu certificado de desenvolvedor iOS verificado (eu sou membro de um programa Enterprise) e eu tinha dois perfis de provisionamento com o mesmo ID de aplicativo no meu Mac. Eu apaguei um.

Espero que isso ajude alguém.

user3900346
fonte
0

Eu tentei todas as opções acima. Eu continuava recebendo o erro sobre o UUID não ser encontrado.

Fui ao projeto, abri project.pbxproj e encontrei todas as instâncias do UUID (2) e excluí o UUID (não a linha inteira).

Corrigido o problema.

Dorrin
fonte
0

Corrigi esse problema selecionando a equipe correta no Xcode (faço parte de várias equipes). Além disso, revoguei meu certificado, solicitei um novo, fiz o upload e o re-baixei.

Víbora
fonte
0

Experimentou o mesmo problema. Houve um problema com um certificado expirado. Você precisará criar um novo certificado e o perfil prov correspondente. Siga o conselho de dulgan para fazer isso.

Livro de Josué
fonte
0

Removidos os perfis do diretório em sua máquina: "~ / Library / MobileDevice / Provisioning Profiles". E conectado ao centro do desenvolvedor da apple e editado o perfil de provisionamento específico, selecionou o certificado para o perfil de provisionamento e gerou o perfil novamente. Instalei o novo perfil e funcionou para mim.

Minna zacharias
fonte
0

Encontrou outra maneira que isso ocorre hoje. Quando você edita seu perfil de aprovisionamento após uma alteração de certificado, pode ver os certificados selecionados, dizendo 2 de 1 certificados selecionados (se você usar apenas 1 certificado). Apenas desmarcando e selecionando novamente o certificado, você pode regenerar e instalar o perfil e resolver o problema.

AdbC
fonte
0

A solução da @vomako quase resolveu meu problema, mas eu tive que dar mais alguns passos.

Refiro-me ao seguinte ...

No Xcode 6.1.1, fui para Preferências -> Contas -> Visualizar detalhes

Após a atualização para o Xcode 6.1.1, o principal problema para mim é o > Exibir Detalhes botão estava acinzentado.

Eu tive que excluir minha conta, reiniciar o Xcode e adicionar minha conta de desenvolvedor novamente.

Após essa etapa, eu pude novamente visualizar detalhes e atualizar meus perfis de provisionamento.

andrewbuilder
fonte
0

Selecionei Nenhum no menu suspenso Equipe nas configurações gerais de destino. Em seguida, selecionou a equipe original. O Xcode mostra um botão giratório próximo a ele. Aguarde a conclusão e tudo funcionará. Tentei no Xcode 6.2

Jeet
fonte
0

Eu tive esse problema várias vezes, normalmente ele pode ser resolvido com a reabertura do Xcode.

Eu excluí os dados derivados do organizador do Xcode. Eventualmente funciona

r0ng
fonte