El certificado ha expirado o ha sido revocado

159

Hace un tiempo comencé a codificar una nueva aplicación ios, después de un largo descanso, estoy trabajando en ella nuevamente y la tengo casi completa.

Lo probé en el simulador, pero cuando intenté instalarlo en mi iphone 6 (algo que ya hice en el pasado) recibí un error que me indica que mi aplicación no se puede instalar ya que el certificado que se usó para firmar esta aplicación expiró o ha sido revocado.

Intenté muchas cosas:

  1. Eliminé todos los certificados y perfiles de aprovisionamiento de xcode, keychain y apple developer y dejé que xcode me creara nuevos
  2. Eliminé xcode e hice todo el proceso desde el principio

Pero esto no solucionó mi problema.

¿Alguna idea de cuál podría ser el problema?

usuario6218736
fuente
2
Probablemente seas una víctima de esto
2016
después de solucionar el problema, no mostraste suerte
user6218736
1
no importa lo que haga: el certificado utilizado para firmar "Nombre de mi aplicación" ha caducado o ha sido revocado. Se requiere un certificado actualizado para firmar e instalar la aplicación.
user6218736
1
¿tiene la fecha y hora correctas del sistema?
2016
Acabo de eliminar mi cuenta de Apple de Xcode y también elimino claves de Keychain y las agrego nuevamente, Funciona como un Magic. Sin embargo, he intentado en su mayoría otros pasos pero no funcionó para mí.
Ravi

Respuestas:

279

Editar: esta respuesta no funciona para Xcode 10 y superior. Ver la respuesta de turkenh.


Solución

En primer lugar, limpie el proyecto manteniendo presionadas las teclas Mayús (⇧) + Comando (⌘) + K o Seleccione Producto > Limpiar

Luego:

  1. Ir a Xcode menú > Preferencias

  2. Seleccione Cuentas > Equipo > Ver detalles

  3. Seleccione cualquier perfil de aprovisionamiento de la lista Perfiles de aprovisionamiento

  4. Haga clic derecho> Seleccionar Mostrar en Finder . Luego verá todas las listas de perfiles de aprovisionamiento

  5. Seleccione toda la lista de aprovisionamiento de la carpeta y muévala a la papelera.

  6. Descargue Todos los perfiles de aprovisionamiento haciendo clic en Descargar todo debajo de las listas de Perfiles de aprovisionamiento.

¡Ahora, corre de nuevo y debería funcionar!

Md.Riduanul Islam
fuente
2
¡Bueno escuchar eso! :)
Md.Riduanul Islam
2
Si, tienes razón. El aprovisionamiento automático de Xcode es la forma preferida de codificar aplicaciones de signos durante el desarrollo y la distribución. En otras palabras, este es el enfoque recomendado para configurar sus proyectos tanto para cuentas de desarrollador de empresa como de App Store. Consulte el siguiente enlace para obtener más detalles: developer.apple.com/library/ios/qa/qa1814/_index.html
Md .Riduanul Islam
2
Salvavidas! ¡Gracias!
Joel
77
y no tengo ningún equipo / ver detalles
usuario924
2
y es cuentas no cuenta
usuario924
80

Editar: esta respuesta no funciona para Xcode 10 y superior. Ver la respuesta de turkenh.


Había experimentado este problema y pude encontrar una respuesta.

La respuesta de la que proviene esto se puede encontrar aquí .

Esto es lo que tienes que hacer:

  1. Vaya a Preferencias-> Cuentas
  2. Presione en su cuenta
  3. Haga clic en "Ver detalles"
  4. Haga clic en "Descargar todo" en la esquina inferior izquierda.

Estos pasos resolvieron el problema para mí.

Anthony Dito
fuente
1
Trabajó. Gracias Anthony
GMHSJ
77
ver detalles - no existe tal botón
usuario924
55

Para aquellos que no pueden encontrar el botón "ver detalles" en Cuenta> Equipo> Ver detalles , así es como resolví esto en Xcode 10 :

  1. Elimine todos los perfiles de aprovisionamiento en ~ / Library / MobileDevice / Provisioning \ Profiles /
  2. Limpie el proyecto manteniendo presionadas las teclas Mayús (⇧) + Comando (⌘) + K o seleccionando Producto> Limpiar (puede estar etiquetado como "Carpeta de compilación limpia" )
  3. Reiniciar Xcode

e intenta de nuevo.

turkenh
fuente
1
Me ha ayudado Estoy usando fastlane y tuve que eliminar todos los perfiles directamente de ~ / Library / MobileDevice / Provisioning \ Profiles / Limpiar el proyecto y reinstalar los perfiles con la coincidencia de fastlane ...
Vladimír Slavík
1
Para mí en Xcode 11 solo necesita el paso 2 cada vez antes de ejecutar la aplicación
Tahan
Realmente muy útil. ¡Gracias amigo!
Haruras Chaurasia
34

Tenía una solución ligeramente diferente. Puede haber sido de actualizaciones, o de mi caso de uso particular.

Usando Xcode 7.3.1

Estoy usando un sistema de intercambio de archivos (dropbox) para desarrollar en dos máquinas diferentes. Usar la Download Allsolución no me lo solucionó.

Siguiendo el enlace de arriba, tomé el consejo de

eliminar todos los perfiles en ~ / Library / MobileDevice / Provisioning Profiles

(que es una medida extrema, pero Xcode ahora debería descargar lo que necesita)

Xcode solicitó actualizarse.

Todavía tengo un problema al cambiar entre el desarrollo en las diferentes máquinas. Presenta la siguiente advertencia / falla:

El derecho de identificador de aplicación de esta aplicación no coincide con el de la aplicación instalada. Estos valores deben coincidir para que se permita una actualización.

La solución a ese problema es eliminar el elemento de desarrollo del dispositivo, y luego se reinstalará.

bshirley
fuente
Esto funcionó para mí. No se mostraban perfiles de aprovisionamiento en XCode, por lo que no pude eliminarlos desde allí.
henrikmerlander
¿Qué pasa con los certificados eliminados? ¿Todavía podría ejecutar esos proyectos? (esto funcionó para mí aunque tengo esas consultas)
Gel
@gel los certificados eliminados deben ser recargados por Xcode cuando los necesite
bshirley
25

Un simple "Clean" ( Shift (⇧) + Command (⌘) + K ) me resolvió

marceloquinta
fuente
Soy fanático de la construcción limpia y limpia, ¡pero nunca pensé en hacer esto en este número! ¡Gracias! :) Haga Comando + Alt + Opción + Mayús + K para limpiar su compilación solo para asegurarse.
Glenn
Esto es bueno (lo hago siempre) pero no lo suficiente. Sin embargo, eliminar todos los perfiles de aprovisionamiento en ~ / Library / MobileDevice / Provisioning \ Profiles / funcionó para mí.
Raphael Pinel
11

Encontró otro caso que da como resultado un Certificate has either expired or has been revokederror sangriento Xcode 9. Si está intentando firmar con un certificado válido pero tiene otro certificado revocado en el mismo equipo en su llavero, Xcode arroja este error. Para verificar si tiene un certificado revocado, consulte Xcode -> Preferences -> Accounts -> Your Apple ID -> Your Team -> Manage Certificates. Eliminar el certificado revocado con Keychain Accessresuelve esto. Parece otro error de signo de código en Xcode.

Alexander Vasenin
fuente
Este es el que me funciona. Encontré la solución yo mismo, pero me alegro de que ya se haya compartido
Gee.E
3

En Xcode 8,

  1. Vaya a Preferencias-> Cuentas
  2. Presione en su cuenta
  3. Haga clic en "Ver detalles"
  4. Eliminar el perfil que necesitas
  5. Haga clic en "Descargar todo" en la esquina inferior izquierda.
安 仲 根
fuente
Esto lo resolvió para mí, excepto que tuve que presionar "Descargar todo" como 3 veces debido a mensajes de error aleatorios.
sudo
2

-Abra el llavero: verifique todos los certificados seleccionándolo. - Verifique el estado si es válido o no. -Si el certificado no es válido, haga clic derecho sobre él y elimine ese certificado

Tarun M
fuente
2

Un nuevo problema con Xcode 8, lo que funcionó para mí fue desactivar la nueva casilla de verificación "administrar automáticamente la firma" en la pestaña General para el objetivo, y luego volver a activarla.

Esto inicia un asistente de incorporación que configura correctamente las cosas para Xcode 8.

Ricardo
fuente
Esto funcionó para mí, pero no hasta que también reinicié mi Mac, momento en el cual (al iniciar XCode) un cuadro de diálogo me ofreció la opción de revocar un certificado ... Lo hice, luego encendí la administración de firma automática (que había desmarcado antes de reiniciar). ¡+1 por no tener que eliminar ningún certificado!
kwishnu
2

Lo que finalmente funcionó para mí fue apagar y reiniciar mi MacBook, después de descargar los últimos perfiles de aprovisionamiento.

Mike Taverne
fuente
A mí también me funciona. Pero me pregunto cuál es el problema real.
umairhhhs
2

Acabo de desmarcar "Gestionar automáticamente la firma y volver a verificarlo seleccionando el Equipo y funcionó para mí ingrese la descripción de la imagen aquí

Jack Daniel
fuente
2

Tuve este problema y parecía un error en el nuevo sistema de compilación 10.x de xcode .

  1. Vaya a Archivo> Configuración del proyecto. Cambie el sistema de compilación a utilizar Legacy build system.

  2. Limpie en profundidad el proyecto manteniendo presionada la Opción (⎇) + Mayús (⇧) + Comando (⌘) + K o manteniendo presionada la Opción (⎇) y seleccionando Producto> Limpiar carpeta de compilación

  3. Ejecutar en un dispositivo

yogevbd
fuente
2

En Xcode 11 .3.1, la interfaz ha cambiado de todas las respuestas actuales.

  1. Vaya al menú "Xcode"> Preferencias> Cuentas.
  2. Seleccione la ID de Apple adecuada a la izquierda para el proyecto.
  3. Si el perfil aún está activo, haga clic en "Administrar certificados".
  4. Si hay certificados revocados, haga clic con el botón derecho en los certificados revocados y "Eliminar certificado". En la captura de pantalla adjunta, el certificado en rojo debe eliminarse.

Captura de pantalla del certificado revocado

Eliminar el último certificado "Fecha de creación" debería actualizar su certificado, pero se recomienda eliminar todos los certificados revocados.

Después de eliminar los certificados revocados, debería poder reconstruir la aplicación.

Mykel
fuente
1

Después de todo lo anterior, limpiar y reconstruir también es un factor.

Ebin Joy
fuente
1

Cuando ni eliminar ni volver a descargar los perfiles, ni "Limpiar" me ayuda a hacer esto:

Preferencias> Cuentas> ID de Apple> seleccione su acc > seleccione su equipo > Ver detalles ...> restablecer su identidad de firma (Desarrollo de iOS en mi caso).

Esto siempre funcionó para mí.

Alexander Sosnovshchenko
fuente
puedo confirmar que esto funcionó para mí cuando fallaba cualquier otra respuesta / solución, además también descargué todos los perfiles
hajn
3
No se ve "Ver detalles" ni "Restablecer su identidad de firma"
gman
@gman, tienes razón, han cambiado la interfaz de usuario nuevamente. Ahora no estoy seguro de cómo hacerlo.
Alexander Sosnovshchenko
1

1.Cambie la configuración de la sincronización de su Mac a Automático (las preferencias de fecha y hora de apertura verifiquen la configuración de fecha y hora automáticamente).

2.Después de eso, vaya a su código X, limpie y ejecute el código.

3.Si falló, cierre sesión en su perfil de Apple y elimine todos los perfiles de aprovisionamiento creados automáticamente en XCode - Preferencias y mueva todos los perfiles de aprovisionamiento a la papelera y descargue como un nuevo archivo. Luego inicie sesión nuevamente y ejecute su código.

Haileapp
fuente
1

Si tiene un objetivo de prueba de host que ejecuta en el dispositivo, asegúrese de que use la misma identidad de firma de código que el objetivo de la aplicación. De lo contrario, tendrá que limpiar cuando cambie entre probar y depurar la aplicación.

Tuve este problema en Xcode 11.4.1 cuando desactivamos la firma de código en nuestro objetivo de prueba de host como una mejora en el tiempo de construcción. Una vez que volví a activar el inicio de sesión de código para la prueba de host, ya no tuve este problema al cambiar entre ejecutar el objetivo de prueba de host y la aplicación.

un ojo
fuente
0

cambie el nombre de su catálogo, no contenga punto decimal y 0 (cero).

así, lo resuelvo.

jackyshan
fuente
0

Ninguna de las soluciones proporcionadas hasta ahora funcionó (aunque todas son correctas) y eliminar el proyecto Xcode del disco y volver a clonarlo desde el repositorio lo resolvió para mí.

maggix
fuente
0

En algún momento, en Xcode 8 puede encontrarse en un ciclo de revocación-regeneración, donde deja que Xcode 8 "arregle" los certificados y el aprovisionamiento, luego Xcode encuentra que los certificados nuevos / regenerados no son válidos también, y vuelve a revocar, y Sigue sucediendo.

En tales casos, verifique el tiempo de su MacOS. Si lo ha configurado en otro momento, no en la hora actual real, el nuevo certificado siempre "todavía no" será válido.

auspicioso99
fuente
0

No es un gran problema el que enfrenté. Simplemente limpie el proyecto y reinicie su xcode ! ¡Espero que funcione para ti! Me esta funcionando. :)

O, en primer lugar, limpie el proyecto manteniendo presionadas las teclas Mayús (⇧) + Comando (⌘) + K o Seleccione Producto> Limpiar

Luego

Vaya a Menú XCode> Preferencia

Seleccione Cuenta> Equipo> Ver detalles

Seleccione cualquier perfil de aprovisionamiento de la lista Perfiles de aprovisionamiento

Haga clic derecho > Seleccionar Mostrar en Finder . Luego verá todas las listas de perfiles de aprovisionamiento

Seleccione toda la lista provisional de la carpeta y muévala a la papelera.

Descargue todos los perfiles de aprovisionamiento haciendo clic en Descargar todo debajo de las listas de Perfiles de aprovisionamiento.

¡Ahora, corre de nuevo y debería funcionar!

Jamil Hasnine Tamim
fuente
0

Con Xcode Version 10.1lo resolví con estos pasos:

  1. Ir a Xcode, Preferencesy seleccione la Accountspestaña
  2. En la sección de cuentas, haga clic en el engranaje en la esquina inferior izquierda de la ventana y luego haga clic en Export Apple ID and Code Signing Assets...exportar esto en un archivo, por ejemploTest.developerprofile
  3. Eliminar el perfil que está utilizando
  4. Al hacer clic nuevamente en el engranaje, seleccione Import Apple ID and Code Signing Assets...y seleccione su archivo exportado previamenteTest.developerprofile
  5. Ahora realice un Clean( Shift (⇧) + Command (⌘) + K ) y a Build( Command (⌘) + B )
  6. Corre de nuevo
madx
fuente
0

Tuve este problema después de cambiar mi cuenta de correo electrónico.

Después de probar tantas soluciones posibles, la única que funcionó fue simplemente eliminar el certificado que se creó ese día de mi cuenta de desarrollador de Apple . (No era el único certificado en mi cuenta) Parece que un nuevo certificado se creó automáticamente y estaba en conflicto con el principal.

Bruno Pontes
fuente
0

Tengo el mismo problema. Resolví después de limpiar el Proyecto (Shift (⇧) + Comando (⌘) + K), salir de Xcode y abrir de nuevo.

bastoscorrea
fuente
0

Usando Xcode 10.3

Sigue estos pasos:

  1. Vaya a https://developer.apple.com
  2. Siga Account> Certificates, Identifiers & Profiles>Devices
  3. Encuentra tu iPhone de la lista y haz clic en él. Se abrirá la página de detalles.
  4. Deshabilitar y luego habilitarlo
  5. Ve a Xcodeseleccionar tu iPhone y ejecútalo

No se olvide de ir Settings> General> Device Managementconfiar en la cuenta de desarrollador

ilqariesasov
fuente
0

A veces, el "Identificador de paquete" en Xcode está cambiando debido a algunas cosas que hizo. Asegúrese de que el Identificador de paquete que definió en su cuenta de desarrollador de Apple sea exactamente el mismo que el de Xcode.

Burak
fuente
0

En caso de que ayude a alguien: Xcode 11.x revoqué también (eliminé) un certificado en la cuenta de desarrollador de aplicaciones. Luego pensé que también había eliminado el certificado en el acceso a Llavero, pero seguía recibiendo mensajes de error al intentar cargar una actualización de la aplicación en la AppStore.

Luego descubrí que hay dos lugares separados en el acceso de llavero, donde en uno se guarda el certificado (lo suficientemente divertido bajo las teclas, una vez que se selecciona el inicio de sesión en los llaveros) y en el otro la clave privada (por supuesto, bajo los certificados de elementos en llaveros). Me aseguré de que ambos se eliminen y ahora todo está bien.

Uwe
fuente