2012-03-05 15 views
10

Possible Duplicate:
Code Sign error: Certificate identity 'iPhone Developer: My Name (xxx)' appears more than once in the keychainCódigo Señal de error: Certificado de identidad aparece más de una vez en el llavero

Tenemos dos cuentas de programadores diferentes (uno para almacenar y uno para la empresa). La cuenta de la empresa vino más tarde. Larga historia

Se administran en dos correos electrónicos/cuentas diferentes.

Estoy tratando de permitir que un proyecto XCode con dos objetivos diferentes firme nuestra aplicación para cualquiera de las cuentas en función de si estoy haciendo una tienda o una versión empresarial. El problema es que recibo el mensaje de error del título.

Son certificados separados con claves privadas diferentes, así que no entiendo por qué no pueden coexistir y por qué XCode no puede diferenciarlos.

¿Hay alguna manera en que pueda tener dos objetivos diferentes en XCode con estos diferentes perfiles de certs/provisioning?

Actualización: Por mi comentario, pude firmar la aplicación para cualquier objetivo, pero ahora, cuando llegué a producir una IPA, recibí un error sobre certificados ambiguos de los dos llaveros diferentes. Gracias!

+3

Descubrí cómo solucionar este problema. 1. ponga uno de los certificados en su propio llavero. en XCode, establezca las "otras banderas de firma de código" en el llavero correcto para ambos objetivos. – MobileGuy

+0

¡Gracias! ¡He estado tropezando con lo mismo! – onnoweb

+0

@MobileGuy: ¡funcionó, muchas gracias! –

Respuesta

15

Esto es lo que funcionó para mí en Lion ver. 10.7.3 con XCode 4.3.1, ¡y mucho menos doloroso que retroceder a 4.2!

En Acceso de llavero, asegúrese de que su opción "Ver" en el menú> Mostrar certificados caducados esté activada.

Haga clic en "Certificados" 'Categoría' y luego haga clic a través de cada uno de los llaveros que ha enumerado en su barra lateral 'Llavero' en Acceso a Llaveros. Si ve algún duplicado, incluso los certificados caducados, elimine esos duplicados.

Haga clic en la "Categoría" de "Llaves" en Acceso a Llaveros.

Navegue a través de cada llavero buscando y eliminando cualquier "Claves huérfanas" que tengan el mismo Nombre común que el certificado afectado. Las claves huérfanas son aquellas que no están vinculadas por un triángulo de divulgación a un desarrollador de iPhone o certificado de distribución de iPhone que actualmente existe en el llavero.

Si encontró y eliminó cualquier clave o certificado adicional, vuelva a intentar la compilación.

Esto funcionó para mí después de este punto, pero incluye las siguientes partes de Apple en caso de que no funcione para usted.

Si el problema persiste después de eliminar todos los certificados o claves duplicadas activos o caducados por el mismo nombre común, es posible que intente eliminar todos certificados y claves de firma existentes y reemplazarlos por otros nuevos siguiendo los pasos de ¿Cómo borro/revocar mis certificados y comenzar de nuevo.

Por último, si el error persiste incluso después de crear certificados nuevos, haga clic en el certificado afectado en Acceso de llavero, seleccione "Nueva preferencia de identidad" y haga clic en el campo "Certificado".

Si ve certificados duplicados enumerados aquí, este es un problema conocido y poco común con el acceso a Llaveros.

Para solucionar el problema, intente lo siguiente: Exporte su perfil de desarrollador mediante el proceso de Transferencia de sus identidades. Cree una nueva cuenta de usuario de OS X, instale Xcode para el nuevo usuario e importe el perfil de desarrollador creado en el paso anterior.

+1

¡Ahorro de vida! Gracias. – MusiGenesis

3

El mismo problema para mí. Después de renovar los certificados (Desarrollo y distribución)

Para resolverlo ir a la herramienta de llavero y siga los siguientes pasos

  1. Ver -> Mostrar expiró certificados
  2. Seleccionar llavero del sistema
  3. Seleccione una categoría Todos los artículos

Debería ver algunos certificados vencidos, simplemente extráigalos y recupérelos.

espero que ayude

Cuestiones relacionadas