De todos os problemas de desenvolvimento que enfrentei nos meus mais de 20 anos como desenvolvedor de software, nenhum perdeu tanto tempo quanto o lixo de perfil de assinatura / provisionamento de código no Xcode.
Nesta semana, perdi mais de 8 horas tentando criar uma versão ad-hoc do nosso aplicativo para iPhone. No passado, funcionava: eu podia arquivar, colocar um botão de download em nossa página interna e os usuários podiam instalar nosso aplicativo a partir desta página.
Mas, nesta semana, eu estava enfrentando o mesmo problema "Não há identidades disponíveis", descrito aqui.
Eventualmente, eis o que resolveu o problema para mim:
Quando entrei no site desesperado da Apple Developers, ele mostrou que nossa empresa tinha 2 certificados "Distribuição iOS". Eles eram válidos, suas datas de validade estão dentro de meses e, no aplicativo Keychain Access , os certificados foram instalados e válidos ... sem problemas aqui.
Mas o que corrigiu meu problema foi excluir esses dois certificados, recriar um novo e recriar meu perfil de provisionamento "interno" (como o original agora estava mostrando como inválido, pois usava o antigo certificado "iOS Distribution").
Eu também entrei no aplicativo "Keychain Access" no meu MacBook e excluí todas as chaves do "iOS Distribution".
Depois, baixei os novos certificados e perfis de provisionamento e agora, finalmente, o Xcode relataria que havia uma identidade com a qual eu poderia assinar o código.
Para a equipe de desenvolvimento do Xcode:
Por favor. Conserte isso.
Se um desenvolvedor como eu estiver contra uma parede, incapaz de obter um Perfil de Aprovisionamento válido, o que resultará em um aplicativo para download, que falhará sempre na mensagem "O aplicativo não pôde ser baixado no momento". NÃO Permite que a função Arquivar seja usada.
Em vez disso, informe ao usuário qual é o problema. Ajude-os a resolvê-lo, em vez de seguir os movimentos, e felizmente permitindo que eles criem arquivos que nunca serão úteis.
E se uma instalação Ad-Hoc for inválida, coloque algo no Log para explicar o que deu errado e torne isso acessível no Xcode. Atualmente, a mensagem "O aplicativo não pode ser baixado no momento " é inútil e enganosa.
Uma última coisa (se isso ajudar):
Nossa empresa acidentalmente deixou sua licença do Developer Enterprise Program expirar no mês passado. Renovamos então, tudo estava aparentemente bem novamente, mas talvez, nos bastidores, isso tenha atrapalhado nosso certificado de "Distribuição iOS"? E talvez não. Do ponto de vista do site da Apple, tudo estava bem.