2012-10-04 49 views
11

He hecho la asignación de nombres y el envío de aplicaciones iOS innumerables veces. Esta vez me llamó la atención con la Mac App Store. Recibo el mismo mensaje de error repetidamente:No se puede validar y enviar una aplicación a la tienda de aplicaciones Mac

"Mi nombre" es una identidad válida. Sin embargo, no tiene la identidad del paquete asociado.

He reconocido este 2 temas aquí en desbordamiento de pila: mas-code-signing-identity-private-key y mac-app-package-identity-not-installed

Nada hay en el interior resolvió el problema para mí.

Ése es cómo (más fiable) reproducir este mensaje:

  1. que limpiar todos mis certificados y claves privadas que comienzan con "Mac Desarrollador" o "3rd Party Mac desarrolladores". Por supuesto, también los vencidos.
  2. Revocando todas las cosas dentro del portal de certificación de Mac.
  3. Crear App-ID (lo hizo solo una vez)
  4. Crear nuevo certificado para el desarrollo de Mac. Solo puedo suponer que esto es comparable a los certificados de depuración para el desarrollo de iOS.
  5. Crear nuevo certificado para la aplicación de Mac. Una vez más, solo puedo suponer que esto podría ser algo similar a un certificado de distribución en iOS-development.
  6. Por motivos de realización, cree un nuevo certificado/perfil para mi sistema.
  7. Cree un perfil de aprovisionamiento de producción. Solo puedo suponer que esto podría ser equivalente a un perfil de distribución iOS.
  8. Luego descargo todo el desorden del certificado y lo instalo correctamente. Algunos van al llavero, otros entran a las preferencias y XCode.
  9. Para asegurarme de reiniciar XCode o incluso toda la Mac (no cambia el resultado frustrante de todos modos).
  10. Voy a la configuración de compilación del proyecto y selecciono el perfil de provisión de producción, porque supongo que "producción" es equivalente a "distribución". Cambiar la identidad del signo de código en la configuración de compilación de destino tampoco funciona. Si bien Apple afirma en su documentación que para la presentación de la App Store, la identidad de la firma debe modificarse en la configuración de compilación del proyecto.
  11. Ejecuto una compilación de archivo.
  12. Selecciono el archivo en el organizador y hago clic en validar. aparece
  13. Este mensaje de error:

"Mi Nombre" es una identidad válida. Sin embargo, no tiene la identidad del paquete asociado.

No puedo encontrar ningún puntero a lo que significa realmente el término "identidad del paquete". Lo que es más frustrante para mí es que este desorden terminológico en la documentación de Apple sobre el proceso de firma y envío de código no parece muy claro y preciso para mí. Al menos no es tan claro y preciso como la documentación para el mismo proceso con respecto a la presentación de la aplicación iOS (que usa terminología completamente diferente).

Probablemente entendí algo mal? Gracias por cualquier ayuda o puntero de antemano.

+0

Oye, tienes la solución, por favor ayuda. :) – iPhoneDv

+0

La validación de la aplicación es tan horrible ... no puedo creer que la gente todavía esté preparada con todo esto tan solo para enviar una aplicación.Para mí, siempre son horas y horas de dolor, hasta que finalmente pueda validar la aplicación. Después de todos estos años, Apple todavía no puede/no quiere hacer un botón de "reiniciar todo" para permitirnos destruir todo y volver a descargar desde iTunes Connect (certificados, perfiles, etc.). Tan mal que quiero llorar. –

Respuesta

20

OK, tengo algunos consejos importantes (adicionales a la documentación de Apple) para personas que tropiezan con problemas similares.

  1. El mensaje de error es totalmente engañoso.
  2. No tome demasiado en serio todas las palabras de la documentación de Apple.

Para resolver el problema, 2 puntos han sido más significativo:

  1. adicional a todos los demás perfil-desastre se necesitan 2 certificados para su presentación a la Mac App Store (contrariamente al mismo proceso de envío de la App Store de iOS). Ambos deben instalarse junto con sus pares de claves públicas y privadas correspondientes.
    1. Mac App
    2. instalador de Mac
  2. El codesigning necesita ser ajustado en el tipo de generación, no el proyecto. No recuerdo dónde, pero esto se describió como el lado equivocado en una de las documentaciones de Apple.

Eventualmente mi envío funcionó manteniendo esos 2 puntos.

+2

Wow. La parte que me hizo tropezar fue que aparentemente necesitaba un certificado de "Mac App" y de "Mac Installer", aunque solo estoy usando el certificado de la aplicación Mac. De manera predeterminada, estaba marcando ambas casillas cuando creé el certificado, pero eso no funcionó. Encontré una sugerencia en otro lugar que solo debería marcar una, pero eso me dio el nuevo error discutido en esta pregunta. Crear un segundo certificado de Mac Installer finalmente lo puso en funcionamiento. – robotspacer

+0

Certificado de instalador. Buena respuesta. – rougeExciter

2

Esto es lo que era para mí también.

Solo quiero aclarar, absolutamente necesita los certificados de Distribución de aplicaciones de Mac y de Instalador de Mac. Gracias Jacque por su explicación anterior. Debería verse así: enter image description here

+0

¡Funciona! El lugar donde me perdí es el certificado de distribución de Mac Installer. ¡Gracias! –

0

Sí, el problema es el certificado de distribución del instalador de Mac.

La manera más fácil de tener todo arreglado y soltar todos los problemas simplemente vaya a Xcode-> Window-> Organizer-> Devices y luego en la esquina inferior derecha presione en Refresh e inicie sesión con su cuenta ... xcode will generar y descargar todos los certificados y perfiles de aprovisionamiento necesarios.

+0

A menos que tengas un certificado caducado oculto en tu llavero. –

3

Hay un problema adicional con Keychain & XCode.

Cuando Xcode usa un certificado, quiere un solo certificado en su llavero. Si tiene uno caducado, así como uno válido, Xcode a menudo falla la operación.

Por lo tanto, si miras tu llavero con Keychain Access y no encuentras un certificado caducado. ¡Todavía está allí! La configuración predeterminada para Keychain Access oculta los certificados caducados. Vaya al menú Ver y seleccione Mostrar certificados caducados. Elimina todos los caducados, no son buenos para nada.

Quit Keychain Acces and Relaunch Xcode. Xcode a menudo requiere un reinicio al agregar/eliminar certificados.

En ese momento, el proceso de Validación de archivo funcionó para mí.

Cuestiones relacionadas