identifiers developer desarrollador certificacion apple xcode xcode4 code-signing

developer - xCode 4: reinstala los certificados de llavero que elimino



https developer apple com account ios certificate (16)

  1. Eliminar ~ / Library / Developer / Xcode
  2. Proyecto limpio

construir...

Estoy recibiendo este error:

Error de CodeSign: la identidad del certificado ''iPhone Developer: XXX'' aparece más de una vez en el llavero. La herramienta de codesign requiere que solo haya una.

Al principio pensé, no me preocupe, iré al llavero y eliminaré el duplicado (más antiguo), lo cual hice. Volví, cerré xcode, volví a abrir xcode y proyecto, el mismo error. Lo pensé para mí mismo. De vuelta al llavero y el certificado está allí de nuevo. Borro ambos certs, repeat y aviso mientras se carga el proyecto, los dos certs que eliminé vuelven a aparecer en el llavero.

Después de mucha búsqueda, me aseguré de que no tenía el certificado en el llavero del sistema, cosa que no hice. También hice una limpieza y reconstrucción. Cuando tenía duplicados con xCode 3 podía limpiar el duplicado de llavero y estaba bien. Pero con xCode 4, literalmente, simplemente los reinstala de alguna manera cuando abro el proyecto. Incluso eliminé todos los archivos .cer en mi sistema de los que posiblemente podría sacarlos.

¿Alguna sugerencia?


  1. Elimine todos los perfiles de provisión de XCode Organizer;
  2. Eliminar los certificados de desarrollador anterior del acceso de llavero;
  3. Genere Perfiles de Aprovisionamiento solo con el Certificado de Desarrollador correcto;
  4. Descargue e instale los nuevos perfiles de provisión;

- EDITAR -

Fusionar la respuesta de @ Codezy y el comentario de @ iphone007.


Acabo de instalar Xcode 4.6.1 y comencé a tener este problema de nuevo. La última vez fue hace mucho tiempo. Eliminé los viejos perfiles de aprovisionamiento y los certificados, pero todavía no pude compilar.

Esta vez resultó que tenía 2 certificados enumerados para mí en la cuenta del equipo del portal de desarrolladores. El primero estaba vencido, el segundo no. Xcode siguió agarrando el primero que encontró mientras refrescaba (o tal vez ambos).

Eliminé ambos certificados del llavero, luego descargué manualmente el bueno del portal de Apple y lo agregué manualmente al llavero. Ahora puedo construir de nuevo.

(Y envié una solicitud al administrador del equipo para que elimine el certificado anterior).


Al eliminar los perfiles de aprovisionamiento en la biblioteca de Organizer, también debe eliminar el certificado de desarrollador de iPhone en Acceso a Llaveros. (El nombre del certificado es probablemente como "Desarrollador de iPhone: XXXXX ..." e indicado por un signo de X rojo, como caducado)


Citando una respuesta a un duplicado de esta pregunta, algunos de los errores de Xcode en esta área solo pueden resolverse reiniciando OS X.

Al final, logré el éxito eliminando todo lo mencionado en cualquiera de las respuestas a esta pregunta, reiniciando y luego instalando manualmente las piezas que necesitaba (no confiaba / probaba la función automática de descarga de perfil / certificado).


Encontré una forma realmente fácil de arreglar esto en 4.6.1. ¡Puedes hacerlo sin reiniciar nada o eliminar ningún perfil!

Con Keychain Access y su proyecto de Xcode abierto:

  1. En Xcode, abre Organizador - "Dispositivos" y selecciona el "equipo" con el certificado duplicado.
  2. Cambie al Acceso a Llaveros y elimine los viejos certificados duplicados. Nota: asegúrese de activar "mostrar certificados caducados" para no perder ninguno.
  3. Los certificados habrán desaparecido del perfil de "equipo" en Xcode Organizer.
  4. Limpiar proyecto y construir

¡Espero eso ayude!


Intenté todo lo que se sugirió aquí, pero no funcionó nada, salvo que la reinstalación de XCode 4.3 resolvió mágicamente el caso.


La otra razón por la que xcode sigue instalando su certificado es porque no eliminó la clave, solo el certificado. Debe eliminar la clave privada (y la clave pública correspondiente), así como el certificado en el llavero, de lo contrario, xcode reinstalará el certificado.

Seleccione aquí Para eliminar certificados de desarrollo y distribución de su llavero


La solución fue ir al organizador, en la biblioteca, a los perfiles de aprovisionamiento, eliminarlos todos y luego volver a instalar los perfiles que aún necesitaba.


Para la posteridad, esta es la estrategia para evitar este problema en nuestro script automatizado de compilación:

  1. Antes de construir, mueva el directorio ~ / Library / MobileDevices / Provisioning Profiles a un lado
  2. Verifique si la Utilidad de configuración de iPhone se está ejecutando y ciérrela (los certificados siempre vuelven a aparecer si esta aplicación está abierta. En XCode 4.1, también debe cerrar el organizador).
  3. Ejecuta tu construcción
  4. Mueva el directorio de Perfiles de Aprovisionamiento de nuevo
  5. ¿Lucro?

Pasé medio día en esto y finalmente encontré la solución

  1. Abrir KeyChain Access.app
  2. Seleccione "Sistema" en el menú "Llaveros" en la parte izquierda de la pantalla de la aplicación Keychain
  3. Seleccione "Certificados" en el menú desplegable "Categoría"
  4. Eliminar todas las certificaciones antiguas.

Luego cierre Keychain.app y vaya a Xcode -> Organizador

  1. Eliminar todos los perfiles de provisión en el menú Biblioteca
  2. Eliminar todos los perfiles de provisión en el menú de dispositivos
  3. Presione el botón "Actualizar" en el menú Biblioteca -> Perfil de provisión
  4. Agregue los perfiles necesarios a su dispositivo

Construye de nuevo tu aplicación :)


Por lo que vale, @AndreasPrang, tu respuesta funcionó cuando todo lo anterior no. Pude ver que el certificado caducado no estaba en ningún lugar del llavero, sin embargo, cuando hice una compilación, Xcode dijo que sí. Eliminar los perfiles de aprovisionamiento (todos), seleccionar mi nombre en la sección Equipo y hacer clic en el ícono de actualización en la esquina inferior derecha del organizador tampoco ayudó. Reiniciar Xcode no ayudó, pero cerrando XCode, eliminando ~ / Library / Developer / Xcode sí. Cuando reinicié XCode, reconstruyó todo y estaba contento.


Tuve el mismo problema y las soluciones anteriores no resolvieron mi problema (bueno, casi).

Tenía el mismo ID / certificado de desarrollador duplicado del que todos se quejaban, e intenté eliminar todos mis perfiles, revocando / volviendo a publicar mi certificado, asegurándome de que no había ninguno en el llavero del sistema, reiniciando, etc., etc.

Al final resultó que había un certificado en el llavero del sistema, uno que había expirado y por lo tanto estaba oculto por defecto en la lista.

Asegúrese de que pueda ver los certificados caducados en KeyChain

Para hacer esto:

  1. Acceso abierto a llavero
  2. Haga clic en el menú Ver
  3. Haga clic en Mostrar certificados caducados
  4. a continuación, busque y elimine certificados de desarrollador caducados

XCode 4 tiene una nueva característica "Aprovisionamiento automático del dispositivo". Se encuentra en el organizador en la biblioteca / perfiles de suministro. Si tiene esto habilitado, descargará automáticamente sus perfiles de aprovisionamiento desde el servidor de aprovisionamiento Apple Developer y obtendrá el error de tener duplicados. La forma más fácil de solucionarlo es borrar todos los perfiles de aprovisionamiento y presionar Actualizar para el "Aprovisionamiento automático del dispositivo". Esto cargará sus perfiles de aprovisionamiento desde el servidor y solucionará su problema.


el método anterior no funciona para mi caso

finalmente, voy al llavero

y busca la clave ingresando el nombre

finalmente encontré el certificado que se supone debe ser eliminado antes. entonces lo eliminé y el problema fue resuelto

es realmente frustrante, y no sé si es el error ... realmente agotador.


si quieres jugar con el acceso de llavero para eliminar el certificado caducado, puedes probar esto:

  • cree un nuevo llavero, nómbrelo como "caducado" y mueva SÓLO el certificado caducado.
  • elimine el llavero "caducado" recién creado que contiene SOLO el certificado caducado, cuando se le solicite seleccione "Eliminar referencias y archivos".

el certificado caducado desaparece junto con el llavero. funcionó perfectamente para mí