Atualizei para o Xcode 6.1 hoje e adivinhe: Agora estou tendo problemas para enviar versões usando o aplicativo de desktop TestFlight. Aqui está o erro que estou recebendo enquanto o aplicativo começa a criar o IPA:
erro: / usr / bin / codesign --force --preserve-metadata = identificador, direitos, regras de recursos --sign 854059d45eed724593debef577a562e1ba96ab55 --resource-rules = / tmp / QYFSJIvu7W / Payload / XX.app / ResourceRules.plist / tmp /QYFSJIvu7W/Payload/XX.app falhou com o erro 1. Saída: Aviso: o uso de --preserve-metadata com a opção "resource-rules" (descontinuado no Mac OS X> = 10.10)! Aviso: --resource-rules foi descontinuado no Mac OS X> = 10.10! /tmp/QYFSJIvu7W/Payload/XX.app/ResourceRules.plist: não pode ler recursos
O 'Artigo de Suporte' não faz ideia do que está acontecendo.
Não parece ser um problema do TestFlight porque o mesmo acontece em um ambiente de IC como o Jenkins, usando o xcrun ou ferramentas semelhantes.
O aplicativo não foi atualizado por meses, então eu sei que não esperava atualizações para corrigir isso tão cedo. Costumava funcionar muito bem para mim e para meus clientes, por isso também não estou interessado em abandoná-lo por outra coisa.
Qualquer idéia sobre o que é esse erro e como corrigi-lo seria muito apreciada.
fonte
xcrun -sdk iphoneos PackageApplication -v <Path_to_App> -o <Path_to_IPA> --sign <Distribution_certificate> --embed <Provisioning_profile>
. Com o Xcode 6.0.1, tudo funcionou bem.Respostas:
Gostaria de saber por que ele funciona, mas aqui está uma correção que funcionou para mim:
fonte
Code Signing Resource Rules Path
nas minhas Configurações de compilação. Qualquer ideia?O patch a seguir para PackageApplications o corrigiu para mim, removi as regras de recursos, pois diz que está obsoleto na 10.10.
O Testflight cria trabalho sem ele. A Appstore também cria.
fonte
Enviei um email para o suporte do TestFlight e obtive esta resposta:
A solução sugerida funcionou.
fonte
A resposta de Tim Gostony não funciona mais desde o lançamento do Xcode 7. Agora, o processo de envio da App Store falha quando as regras de recursos estão presentes. A solução é limpar o caminho das regras de recurso de assinatura de código e substituir xcrun pela ferramenta xcodebuild:
O Options.plist mais simples para exportar arquivos ipa de distribuição ad-hoc é assim:
Existem outras opções disponíveis para este arquivo plist em relação a código de bits, afinamento de aplicativos etc. É por isso que acho que a ferramenta xcodebuild é a ferramenta certa para exportar arquivos ipa para iOS 9 e superior.
Mais detalhes sobre as opções plist estão disponíveis com o comando xcodebuild -help.
fonte
No Yosemite com XCode 6.4, mesmo usando o patch SDKROOT, a assinatura do código falha. O artigo a seguir explica como corrigir o script XCode para contornar isso. Observe que isso está corrigindo o XCode, portanto é específico da versão, mas corrige o problema.
http://www.jayway.com/2015/05/21/fixing-your-ios-build-scripts
fonte
A resposta da Alistra funciona para mim, mas não quero alterar um script que não seja meu (uma versão futura do Xcode pode alterar esse arquivo e a correção será perdida).
Acho que a resposta de Vladimir Grigorov é a melhor se você tiver um arquivo usando:
No meu caso, não tenho o arquivo morto, porque modifico o aplicativo após compilá-lo e preciso alterar o ID do pacote e o certificado de assinatura.
A solução que encontrei é
codesign
me chamar antes de usarPackageApplication
e pedirPackageApplication
para não assinar. Como isso :Não se esqueça de incorporar o
.mobileprovision
arquivo usando para assinarcp
.fonte
Conforme especificado em outra resposta , você também não pode especificar o certificado de distribuição com o qual assinar, e ele será empacotado corretamente. O TestFlight precisaria atualizar o aplicativo para fazer isso.
fonte