iphone - Error de signo de código con Xcode 3.2
xcodebuild provisioning (16)
Tenía un entorno de construcción totalmente funcional antes de actualizar a iPhone OS 3.1 y Xcode 3.2. Ahora cuando intento hacer una compilación, obtengo lo siguiente:
Error de signo de código: el perfil de provisión ''Prueba de FooApp'' especifica el identificador de aplicación ''no.fooapp.iphoneapp'' que no coincide con la configuración actual ''TGECMYZ3VK.no.fooapp.iphoneapp''
El problema es que Xcode de alguna manera logra pensar que el perfil de aprovisionamiento "Prueba FooApp" especifica el identificador de aplicación "no.fooapp.iphoneapp", pero este no es el caso.
En el Organizador (y en el sitio web del portal para desarrolladores de iPhone), el identificador de la aplicación se ve correctamente como ''TGECMYZ3VK.no.fooapp.iphoneapp''.
Además, al establecer el perfil de aprovisionamiento en las opciones de compilación a nivel de proyecto, Xcode identifica correctamente el identificador de la aplicación, pero cuando voy al destino, no puedo seleccionar ningún perfil de aprovisionamiento válido.
¿Qué podría estar causando este problema?
Actualización: Intenté crear un nuevo perfil de aprovisionamiento, pero todavía no tuve suerte. También intenté simplemente cambiar la aplicación identificada en Info.plist a solo "no.fooapp.iphoneapp". La construcción tiene éxito, pero ahora recibo un error del Organizador:
El ejecutable se firmó con derechos no válidos. Las autorizaciones especificadas en el archivo de Derechos de firma de código de su aplicación no coinciden con las especificadas en su perfil de aprovisionamiento. (0xE8008016).
Esto parece razonable, ya que el perfil de aprovisionamiento aún tiene el identificador de aplicación "TGECMYZ3VK.no.fooapp.iphoneapp".
También verifiqué dos veces que todos los certiicados son válidos en el Llavero.
¿Entonces mi pregunta es cómo puedo hacer que Xcode vea el identificador de aplicación correcto?
ACTUALIZACIÓN: Como se indica a continuación, lo que parece solucionar el problema es eliminar todos los perfiles de aprovisionamiento, certificados, etc., crear nuevos certificados / perfiles e instalarlos de nuevo. Si alguien tiene alguna otra solución, sería bienvenida. :)
A veces, Xcode no copia automáticamente su perfil de aprovisionamiento a la ubicación correcta. En mi caso, eso fue cierto.
Verifique que su perfil de aprovisionamiento se encuentre en el directorio ~ / Library / MobileDevice / Provisioning Profiles y, si no solo arrastre y suelte, limpie y compile
Además, asegúrese de haber agregado una referencia al nombre de archivo del derecho "dist.plist" en la configuración de su proyecto CODE_SIGN_ENTITLEMENTS.
Ayer tuve el mismo error. Probé todos los diversos procedimientos de restablecimiento en las otras respuestas sin suerte. Eventualmente yo también
- reinicié mi mac
- reinicié mi iPhone
- eliminé todos los perfiles de aprovisionamiento de mi iphone desde el teléfono usando XCode
- borré todos los perfiles de mi mac (~ / Library / MobileDevice / Provisioning Profiles para mí)
- ¿Qué más? eliminó la carpeta de compilación, reinició XCode, instaló la actualización a 3.1.2 sdk, sacrificó un pollo.
Y he aquí, ahora funciona, el error se ha ido. Este es un territorio vudú serio.
Bueno, como parece ser el caso con muchos de estos problemas de firma de código, eliminar todos los perfiles de aprovisionamiento, certificados, etc. y revocar y generar todo de nuevo resultó ser el truco. Incluso creé un nuevo identificador de paquete, identificador de aplicación, etc., y ahora la distribución AdHoc está funcionando nuevamente.
Como referencia, me encontré con el mismo problema y eliminar todos mis perfiles, certs existentes y todo desde mi unidad local y desde el portal de desarrolladores, y eliminar mis dispositivos existentes y volver a agregarlos (portal de desarrolladores) me pareció el truco.
Dentro de Resources / Entitlements.plist hay un booleano "get-task-allow" si eso no está marcado, verifíquelo. Esto solucionó el problema para mí.
Después de quedar perplejo por esto durante bastante tiempo, volví a visitar la configuración y descubrí que había invertido la ''Identidad de firma de código'' y las entradas ''Cualquier dispositivo con sistema operativo de iPhone''. - La pista que tuve sobre este evento fue mostrada por.
- Eliminando cada perfil del teléfono
- Build and Go
En este punto, xcode intenta aprovisionar el teléfono (dispositivo)
- Examine el teléfono para ver qué perfil de provisión se ha agregado.
Como prefijo todos mis perfiles ''AdHoc'' o ''Desarrollo'' o ''AppStore'', vi inmediatamente que el proceso de instalación ponía un perfil de desarrollo en el dispositivo y no un perfil AdHoc.
El dispositivo puede no estar en la lista. Intente modificar su perfil de aprovisionamiento.
El problema está en el archivo "project.pbxproj" ubicado dentro del archivo [your project] .xcodeproject. Si se siente valiente, haga clic derecho en el proyecto .xcode y vea los contenidos, luego abra "project.pbxproj" con un editor de texto plan. Busca en el interior la ruta ofensiva y corrígela. En mi caso, simplemente eliminé todo el camino y simplemente dejé "Entitlements.plist" y solucionó mis problemas. Recomiendo encarecidamente realizar una copia de seguridad de su proyecto .xcode antes de intentar esto.
En XCode, en el panel "Grupos y archivos", expanda "Objetivos" y haga doble clic en el objetivo de su aplicación.
Esto abrirá el panel de información para su objetivo. En la sección "Crear", compruebe la sección "firma de código" para cualquier perfil anterior. Esto me ha pasado muchas veces particularmente después de una actualización a una nueva versión de sdk y iphone os
Otra causa es si el dispositivo que desea instalar no es un dispositivo aprobado en el Certificado de distribución.
Quick Hack si estás en Xcode 4.3.
En Xcode en Configuración del proyecto> MiTarget> pestaña Resumen hasta el final, en la parte inferior hay una casilla de verificación que dice "Habilitar derechos". Cuando lo desmarqué, hizo que el error desapareciera.
Solo para agregar una nota aquí: Encontré el mismo error (0xE8008016) después de reemplazar la placa lógica de mi Macbook (aunque me imagino que tendrías el mismo problema en un Mac completamente nuevo), y después de horas dando vueltas en círculos me di cuenta de que el Portal del Programa para Desarrolladores de iPhone tenía certificados separados para Desarrollo y Distribución .
Un cambio en el hardware significa que debe volver a emitir ambos certificados. He vuelto a publicar Developer pero no Distribution. Debido a que mi nombre no había cambiado cuando mi hardware lo hizo (y los certificados están identificados por el nombre del propietario), esto hizo que fuera difícil detectar un problema;) Espero que esto le ahorre a otros mi frustración.
Tuve que eliminar manualmente los perfiles de aprovisionamiento de mi teléfono, luego reconstruir las aplicaciones después de hacer un "limpiar todos los objetivos" desde el menú de compilación.
Eso está en Configuración -> General -> Perfiles
Esto me pasó cuando obtuve una nueva Mac. Lo arreglarás, no te preocupes
Verifique los derechos de firma de código en la información tanto para el objetivo de compilación como para la aplicación principal, si los derechos de firma de código dicen en cualquiera de los dos, quítelo
Haga doble clic en el objetivo y luego seleccione la pestaña "Propiedades". Cambia el com.yourcompany.${...}
.