2012-04-02 23 views
10

Soy muy nuevo en el desarrollo de iOS, tengo una aplicación configurada y lista para ser distribuida, pero parece que aparece este error cada vez que ejecuto la aplicación en mi DISPOSITIVO solamente. el simulador de iOS funciona bien. Aquí está el error completo:Error de firma de código: verificación de verificación de código de aplicación fallida

Application failed codesign verification. The signature was invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate. (-19011)

Aquí está todo el registro:

Validate "/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app" 
    cd /Users/masonsocha/Desktop/Apps/MultiBrowser 
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    setenv PRODUCT_TYPE com.apple.product-type.application 
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/Validation "/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app" 

warning: Application failed codesign verification. The signature was invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate. (-19011) 
Executable=/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app/Multibrowser 
codesign_wrapper-0.7.10: using Apple CA for profile evaluation 
AssertMacros: trust_result == kSecTrustResultUnspecified, file: codesign_wrapper.c, line: 594 
AssertMacros: profile, file: codesign_wrapper.c, line: 918 
codesign_wrapper-0.7.10: Failed to load provision profile from: /Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app/embedded.mobileprovision 
- (null) 

ya he intentado acortar la longitud del nombre del proyecto, que no ayudaron, actualmente estoy usando OSX Lion, en Xcode 4.3.2. He pasado toda la noche tirando de mi cabello, ¡por favor ayuda!

+0

¿Está intentando construir un dispositivo para probar o construir para distribuirlo en la tienda de aplicaciones? – magmastonealex

+0

Parece que quizás ni siquiera ha configurado la firma del código de acuerdo con esto. > La firma no era válida, contiene derechos no permitidos, o era > sin firmar con un certificado de distribución de iPhone. ¿Siguió usted alguna de las instrucciones del portal para desarrolladores para obtener sus certificados? ¿O simplemente está cambiando del simulador al dispositivo y esperando que se ejecute? – rooftop

+0

Para aquellos de ustedes que buscan una solución actualizada - basada en abril de 2013, por favor siga: https://developer.apple.com/library/ios/#technotes/tn2250/_index.html – Yizhar

Respuesta

9

que tenían el mismo problema exacto ..

Ir al acceso a llaves

  1. Compruebe que tiene sus claves públicas y privadas configurados correctamente. Esta es una buena referencia https://developer.apple.com/legacy/library/technotes/tn2250/_index.html

  2. había ajustado previamente mis preferencias Certificado llavero para hacer el trabajo de Outlook, pero que más o menos la pata código XCode firma ..

Después de establecer estos a la "mejor intento "Configuración (ver captura de pantalla) de validación funcionó bien

enter image description here

+0

Esto funcionó para mí. Gracias. – user1489709

2

tuve mismo problema incluso después de comprobar todas las cosas de la firma. Tenía la antigua configuración "Se puede eliminar errores" en mi archivo de derechos. Cambiarlo a get-task-allowed solucionó el problema. Apple tiene instructions on how to debug signing issues.

+0

Gracias por todas las respuestas a todos, pero resolví el problema, seleccioné mi perfil de aprovisionamiento de distribución específico, traté de seleccionar la configuración recomendada si seleccionaba automáticamente un perfil válido, y funcionó bien: D –

0

que tenían el mismo problema y lo resolvió por:

  • Cambiar el valor del selector automático de perfil "iPhone desarrolladores" a "Distribución iPhone", de acuerdo a la sección Assigning Provisioning Profiles to Build Configurations.
  • Descargue el perfil de aprovisionamiento de distribución y haga doble clic en él para agregarlo.
19

Puede ser xcode selecciona uno de los perfiles de desarrollo para firmar el código con él.

Asegúrese de que se utiliza el perfil de distribución

de prensa del proyecto, en la configuración de generación -> Código sección Firma ampliar firma de código de Identidad -> Prensa -> Asegúrese de que cualquier iOS SDK se refiere al perfil de distribución.

+1

¡Gracias! Me encontré con esto porque mi entidad de firma del código de liberación se configuró para que coincida con el desarrollador para Test Flight. – sberley

+3

Tiene sentido. ¡Funciona! ¡Muchas gracias! –

3

Podrías resolver que no está dejando la selección del perfil a xcode. Seleccione manualmente el perfil de publicación correcto en la configuración del proyecto y se ejecutará.

1

Tuve este problema pero encontré que ninguno de los problemas anteriores lo resolvió. Eventualmente encontré la solución trabajando en la nota técnica de Apple (https://developer.apple.com/legacy/library/technotes/tn2250/_index.html) sobre el tema.

El problema específico en mi caso era un activo que faltaba o estaba oculto (no encontré cuál), pero que no fue marcado como un archivo problemático en ningún otro lado en el proceso de compilación. Esbocé los pasos que tomé para descubrir esto a continuación.

  1. Archivar la compilación, guardar para el despliegue adhoc.
  2. Navegue hasta el ipa en el buscador, cambie el nombre a .zip.
  3. doble clic para anular el archivo, abra la carpeta 'Carga'
  4. abrir un terminal y escriba lo siguiente:

    codesign --verify -vvvv -R = 'manzana ancla genérico y certificado de 1 [Campo .1.2.840.113635.100.6.2.1] existe y (la hoja de certificado [campo.1.2.840.113635.100.6.1.2] existe o la hoja de certificado [campo.1.2.840.113635.100.6.1.4] existe) '/ Ruta/a/su/app.app

  5. En lugar de ingresar /Path/to/your/app.app, arrastre y suelte el archivo * .app de la carpeta Payload en el terminal, asegúrese de que haya un espacio entre el final del comando y el nombre de archivo, y golpear re giro.

que tiene un error en la salida diciendo 'un recurso sellada o no es válido', con el nombre del archivo de la causa del problema (que comenzó con un punto, que puede haber sido el problema). Cuando busqué el nombre del archivo en el navegador del proyecto XCode, encontré el archivo, pero cuando lo busqué en Finder, no estaba en el disco.

La solución fue simplemente para eliminar el archivo del navegador del proyecto XCode, y el error desapareció. Definitivamente le diría a cualquiera que tenga un problema similar, que trabaje con las notas técnicas de Apple. Están un poco mal redactados, pero es probable que la solución esté allí en alguna parte.

Cuestiones relacionadas