Xcode intentó localizar o generar activos de firma coincidentes y no lo hizo


Así que estoy tratando de crear una compilación ad-hoc utilizando el perfil de aprovisionamiento existente (que funcionaba antes) con Xcode 6.0.1 en Mavericks, pero después de intentar exportar este archivo, sigo recibiendo el siguiente error:

¿Necesito volver a crear mis certificados y perfiles de aprovisionamiento, o hay una solución mejor? ¡Gracias!

Author: CTiPKA, 2014-09-18

9 answers

También estoy enfrentando este problema como un rol de 'Miembro del equipo'. La advertencia 'No se le permite realizar esta operación' me lleva a creer que XCode está aplicando más estrictamente los roles definidos aquí: https://developer.apple.com/programs/roles /

Aunque tengo acceso a los recursos de firma (certificado y perfil de aprovisionamiento), XCode no me permite especificarlos. Intenta actualizar tu rol a Administrador de equipo.

Actualizado 2014-09-29: Después de extensa investigación, he encontrado que es posible generar el .ipa usando xcodebuild desde la línea de comandos incluso como un rol de 'Miembro del equipo' usando lo siguiente:

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile "Provisioning Profile Name"

Crédito a 1

Nota: Como se indica en el artículo vinculado, el "Nombre del perfil de aprovisionamiento" es el nombre especificado en el campo nombre del certificado (visible desde developer.apple.com).

Puede automatizar el proceso en xcode incluyendo la llamada en su script de compilación del proyecto.

 47
Author: Tico Ballagas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-03 09:19:19

Intente abrir su consola y vaya a su carpeta de proyecto Xcode y luego escriba estos comandos:

Para limpiar su proyecto

xcodebuild clean -project YourProjectName.xcodeproj -configuration Release -alltargets

Para crear y archivar su aplicación

xcodebuild archive -project YourProjectName.xcodeproj -scheme YourSchemaName -archivePath YourProjectName.xcarchive

Simplemente puede encontrar su nombre en Xcode > Producto > Esquema De > Editar Esquema...

Finalmente para crear su aplicación .ipa file

xcodebuild -exportArchive -archivePath YourProjectName.xcarchive -exportPath YourProjectName -exportFormat ipa -exportProvisioningProfile 'Your Provisioning Profile Name'

Para encontrar Su Nombre de Perfil de Aprovisionamiento por favor inicie sesión en el Centro de Miembros de Desarrolladores de Apple y vaya a Certificados, identificadores y perfiles, luego haga clic en Provisioning Profiles para aplicaciones iOS. Allí encontrará el Nombre de Su Perfil de Aprovisionamiento.

Si no funciona, intente reemplazar una comilla simple por una doble ( ' con " ).

Usted encontrará .archivo ipa en su carpeta de proyecto Xcode.

Después de esto usted será capaz de abrir su.ipa archivo en iTunes e instalar en su dispositivo iOS.

¡Espero que ayude!

 11
Author: kammodze,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-15 07:32:04

Qué está pasando: Xcode necesita firmar la compilación con un certificado válido. Está tratando de localizar uno sin suerte. ¿Por qué? Porque antes de Xcode6, se le permitía firmar compilaciones AdHoc con su certificado de desarrollador. Y fuiste capaz de hacerlo, porque tienes una clave privada para ello. Pero ahora necesita firmar compilaciones Ad hoc con el certificado Production . Y no tienes una clave privada para ello.

Así que se requieren pasos para hacer posible compilar desde Xcode6 ( https://stackoverflow.com/a/26061067/1918302):

  1. Obtenga una clave privada para su certificado de producción. (Debe exportarlo desde el llavero de Mac que tiene e importarlo a su llavero O Revocar el certificado de producción actual y Crear Nuevo. Durante la creación obtendrás uno. Citando aquí del enlace anterior:

    TENGA CUIDADO: revocar un certificado de distribución empresarial invalida todas las aplicaciones que se firmaron e implementaron con eso certificado ( información oficial)).

  2. Cree un perfil de aprovisionamiento especial de XC Ad Hoc: Distribution (si tiene un rol de administrador en su equipo en developer.apple.com -Xcode hará esto por ti).

  3. Establezca el perfil de aprovisionamiento en el destino de su proyecto -> Configuración de compilación - > Firma de código en este creado en el paso 2.

Hecho!

O si los anteriores no son alcanzables, puede hacer una compilación utilizando herramientas de línea de comandos: https://stackoverflow.com/a/25979784/1918302 . Pero esto me parece un agujero de seguridad y no creo que esto funcione por mucho tiempo.

 7
Author: bucherland,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:34:31

Pudimos solucionar este problema simplemente haciendo que uno de los administradores descargara el perfil "XC Ad Hoc: Distribution" desde el centro de desarrollo, luego enviándolo al "Miembro del equipo" que quería compilar y permitiéndole importarlo manualmente. Dado que ya tenía el cert, esto era todo lo que necesitaba para poder hacer la compilación y dejar de recibir este error. Las respuestas existentes aquí son correctas, pero esta es una forma de baja fricción para obtener la última pieza del rompecabezas para muchos de nosotros.

En resumen, necesita este perfil y el certificado con una clave privada en su llavero.

 2
Author: Clay Fowler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-12-09 00:06:56

Para mí, resultó que la causa de esto era que no había establecido la propiedad de perfil de aprovisionamiento del proyecto según esta respuesta.

 2
Author: devios1,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:26:17

En mi caso, el problema era el ID de la aplicación. Por supuesto, la aplicación existía en mi cuenta del centro de miembros. El problema estaba en el panel de capacidades. Algunas de las capacidades no habían resuelto el problema, pero la construcción fue exitosa. Esto llevó a la situación, cuando mi ID de aplicación en el centro de miembros y Xcode tienen diferentes configuraciones de capacidades.

Eliminar esta disonancia ha resuelto mi problema. Revísalo dos veces, si tienes un problema simular.

 1
Author: Dima Deplov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-18 09:59:34

Debe definir su cuenta en Xcode->preferencias->cuenta Parece que ha definido un AppleID que no está permitido acceder a la cuenta de desarrollador de IOS.

Intenta firmar con ese usuario en https://developer.apple.com/devcenter/ios/index.action y ver si ese usuario está permitido en un programa de desarrollador IOS.

Esto puede suceder si ha firmado con iTunes connect. Son cuentas diferentes.

Espero que esto ayude!

 0
Author: Eva Madrazo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-09-25 07:33:55

Tu cuenta distribuida no es match team .

Debe definir su cuenta en xcodeproj->Identidad->Equipo ->Agregar una Cuenta

 0
Author: kingalex,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-11 02:49:34

También estaba recibiendo este error porque el Certificado de Desarrollador para la máquina en la que estaba construyendo había expirado.

Incluso después de renovar ese certificado, no pude Exportar la compilación para la versión de la Tienda de Aplicaciones. Incluso después de seguir las instrucciones en la respuesta aceptada y actualizar esa cuenta de desarrollador a un administrador.

Resulta que, debido a que el archivo se creó mientras el Certificado de Desarrollador expiraba, ese desarrollador no pudo codiseñar usando el Perfil de Distribución. Tuve que recrear el Archivo, después de renovar el Certificado de Desarrollador, para que esa máquina pueda usar el Certificado de distribución (ya instalado y funcionando previamente) para poder codiseñar el nuevo archivo y cargarlo en app store.

Compartir en caso de que alguien más llegue a este caso edge.

 0
Author: user5684435,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-12-16 00:38:07