Acabo de actualizar a Xcode 6.1 hoy, y adivinen qué: ahora tengo problemas para enviar compilaciones utilizando la aplicación de escritorio TestFlight. Aquí está el error que recibo mientras la aplicación comienza a construir el IPA:
error: / usr / bin / codesign --force --preserve-metadata = identificador, derechos, reglas de recursos --sign 854059d45eed724593debef577a562e1ba96ab55 --resource-rules = / tmp / QYFSJIvu7W / Payload / XX.app / ResourceRules.plist / tmp /QYFSJIvu7W/Payload/XX.app falló con el error 1. Salida: Advertencia: uso de --preserve-metadata con la opción "resource-rules" (en desuso en Mac OS X> = 10.10)! Advertencia: --resource-rules ha quedado en desuso en Mac OS X> = 10.10! /tmp/QYFSJIvu7W/Payload/XX.app/ResourceRules.plist: no se pueden leer recursos
El 'Artículo de soporte' no tiene idea de lo que está sucediendo.
No parece ser un problema de TestFlight porque sucede lo mismo en un entorno de CI como Jenkins usando xcrun o herramientas similares.
La aplicación no se actualizó durante meses, por lo que sé que no debería esperar ninguna actualización para solucionar esto pronto. Solía funcionar muy bien para mí y para mis clientes, por lo que tampoco tengo muchas ganas de abandonarlo por otra cosa.
Cualquier idea sobre de qué se trata este error y cómo solucionarlo sería muy apreciada.
fuente
xcrun -sdk iphoneos PackageApplication -v <Path_to_App> -o <Path_to_IPA> --sign <Distribution_certificate> --embed <Provisioning_profile>
. Con Xcode 6.0.1, todo funcionó bien.Respuestas:
Desearía saber por qué funciona, pero aquí hay una solución que funcionó para mí:
fuente
Code Signing Resource Rules Path
en mi configuración de compilación. ¿Alguna idea?El siguiente parche para PackageApplications lo arregló para mí, eliminé las reglas de recursos ya que dice que está en desuso en 10.10.
Testflight construye el trabajo sin él. La tienda de aplicaciones también se construye.
fuente
Envié un correo electrónico al soporte de TestFlight y obtuve esta respuesta:
La solución sugerida funcionó.
fuente
La respuesta de Tim Gostony ya no funciona desde el lanzamiento de Xcode 7. Ahora el proceso de envío de la App Store falla cuando existen reglas de recursos. La solución es borrar su ruta de reglas de recursos de firma de código y reemplazar xcrun con la herramienta xcodebuild:
La opción Options.plist más simple para exportar archivos ipa de distribución ad-hoc se ve así:
Hay otras opciones disponibles para este archivo plist con respecto al código de bits, el adelgazamiento de aplicaciones, etc. Por eso creo que la herramienta xcodebuild es la herramienta adecuada para exportar archivos ipa para iOS 9 y superior.
Más detalles sobre las opciones de plist están disponibles con el comando xcodebuild -help.
fuente
En Yosemite con XCode 6.4 incluso usando el parche SDKROOT, la firma del código falla. El siguiente artículo explica cómo parchear el script XCode para solucionar esto. Tenga en cuenta que esto es parchear XCode, por lo que es específico de la versión, pero soluciona el problema.
http://www.jayway.com/2015/05/21/fixing-your-ios-build-scripts
fuente
La respuesta de Alistra funciona para mí, pero no quiero cambiar un script que no es mío (una futura versión de Xcode podría cambiar este archivo y la corrección se perderá).
Creo que la respuesta de Vladimir Grigorov es la mejor si tienes un archivo usando:
En mi caso, no tengo el archivo, porque modifico la aplicación después de compilarla y necesito cambiar el ID del paquete y el certificado de firma.
La solución que encontré es llamarme
codesign
antes de usarPackageApplication
y pedirPackageApplication
no firmar. Me gusta esto :No olvide incrustar el
.mobileprovision
archivo usando para firmarcp
.fuente
Como se especifica en otra respuesta , tampoco puede especificar el certificado de distribución para firmar y se empaquetará correctamente. TestFlight necesitaría actualizar su aplicación para hacer esto.
fuente