Error de diseño de código: No se puede encontrar el perfil de aprovisionamiento después de eliminar el perfil caducado


Intentó reconstruir una aplicación que estaba funcionando ayer. Recibí un mensaje de que un perfil había caducado, así que lo eliminé del iPod y de iTunes. Cuando elegí un nuevo perfil (uno con un * en el identificador), ahora obtengo un error:

Code Sign Error: Provisioning Profile (long string) can't be found.

¿Qué me estoy perdiendo? Miré a través de preguntas relacionadas y no vi este escenario ya.

Author: Bhavin Ramani, 2009-11-19

16 answers

A veces su archivo de proyecto xcode se estropea, especialmente si tiene un proyecto antiguo y lo creó primero con una versión anterior de xcode/iphone sdk. Lo que necesita hacer es abrir el archivo de proyecto en un editor de texto, buscar la 'cadena larga' de su error y borrar manualmente esa línea. De hecho, debe seguir adelante y borrar cualquier línea que apunte a cualquier perfil de aprovisionamiento. A continuación, vuelva a abrir el proyecto en xcode, vaya a la configuración y vuelva a seleccionar su nuevo perfil. Esto se aclara temas como ese la mayor parte del tiempo. Las líneas que apuntan a los perfiles de aprovisionamiento se verán así:

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
 852
Author: Brad The App Guy,
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
2012-11-19 16:13:45

Aquí hay una solución más simple que funcionó para mí y que no requiere la edición manual del archivo de proyecto:

En XCode, en el panel "Grupos y archivos", expanda "Destinos" y haga doble clic en el destino de su aplicación. Esto abre el panel de información para el destino. En la sección" Build", marque la sección" code signing " para cualquier perfil antiguo y reemplácelo por el correcto.

Tenga en cuenta que esto es diferente de hacer doble clic en el icono del proyecto y cambiar el perfil de alli. Muy sorprendente:)

Ori

 129
Author: Ori,
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
2010-06-07 09:22:30
  1. Propiedades del&destino del proyecto - > "No firmar código" - > ACEPTAR - > cmd + S (o cmd+B);
  2. Propiedades del Proyecto y objetivos - > "Su Perfil de provisión" - > OK

  3. ¡Todo vuelve a funcionar!

 76
Author: user732414,
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
2011-05-18 22:05:51

Estoy de acuerdo con la respuesta de Brad, que puedes solucionar este problema editando tu objetivo/proyecto a mano, borrando cualquier línea como esta:

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";

Sin embargo, en Xcode 4.2 y posteriores, hay una forma mucho más fácil de acceder a este texto y seleccionarlo y eliminarlo. En el Navegador de proyectos de la izquierda, seleccione su proyecto (la línea superior del Navegador de proyectos). Ahora simplemente elija Ver > Editor de versiones > Mostrar Editor de versiones. Esto muestra el proyecto como texto y puede buscar APROVISIONAMIENTO y elimine la línea problemática, allí mismo en el panel editor de Xcode.

 10
Author: matt,
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-06 19:32:21

Acabo de ver una variación sobre este tema: entré en el proyecto.archivo pbxproj según las notas de Brad Smith anteriores, excepto en este caso todas las líneas PROVISIONING_PROFILE parecían ser correctas, sin que ocurriera la cadena de perfil "mala" que XCode no pudo encontrar.

Sin embargo, la solución fue la misma: eliminar TODAS las líneas PROVISIONING_PROFILE en project.pbxproj, a pesar de que se veía "bueno" en teoría, y luego reabrir el proyecto en XCode.

 6
Author: theevank,
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
2011-05-04 03:24:52

Para lograr la solución de Brad completamente en Terminal, use estos comandos

  1. cd [Xcode project parent]
  2. vi [Xcode project name].xcodeproj/project.pbxproj
  3. /[offending provisioning profile] [Enter]
  4. dd - eliminar toda la línea
  5. Presione n hasta que no se encuentren más
  6. Ctrl + x para guardar y cerrar
 4
Author: MechEngineer,
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
2012-04-17 18:48:02

En mi caso, el problema se resolvió abriendo Ventana -> Organizador, seleccionando mi dispositivo y eliminando el antiguo Perfil de Aprovisionamiento en el panel "Aprovisionamiento" a la derecha. El viejo ya estaba marcado con un símbolo rojo "x", pero el iPhone todavía lo estaba usando.

Además de ese perfil, también estaba apareciendo el nuevo (con el mismo nombre) y después de simplemente relanzar la aplicación lo hice funcionar sin problemas.

 3
Author: stack-o-frankie,
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
2010-11-10 12:01:59

Solo pasé una hora haciendo esto y con la ayuda del consejo de Brad y algunos cambios adicionales, todo funcionó.

He hecho esto usando lo siguiente: 10.7.3, Xcode 4.3.2, iOS 5.1 por cierto.

1) Haga clic derecho en su myapp.xcodeproj y seleccione el contenido del paquete

2) abra project.pbxproj con un editor de texto (no recomiende textedit, ya que puede arruinar el formato)

3) Desplácese todo el camino hacia abajo hasta que encuentre /* Begin XCBuildConfiguration section */

4) Tenga en cuenta que tiene una depuración y secciones de liberación

5) En la sección release echa un vistazo a CODE_SIGN_IDENTITY & "CODE_SIGN_IDENTITY[sdk=iphoneos*]" debería verse algo como esto:

CODE_SIGN_IDENTITY = "iPhone Distribution: MyCompany LLC";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution: MyCompany LLC";

6) Echa un vistazo a PROVISIONING_PROFILE y "PROVISIONING_PROFILE[sdk=iphoneos*]" deberían verse así:

PROVISIONING_PROFILE = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";

Esto debería coincidir con su perfil de aprovisionamiento en Xcode. Para ver si coinciden con open Xcode > Window > Organizer > Devices > Provisioning Profiles > Haga clic derecho en el perfil > Reveal in Finder > El nombre de archivo de la .mobileprovision es su id de perfil.

7) Desplácese hacia abajo en el project.pbxproj y encontrar una segunda instancia de la sección de liberación. La segunda instancia de la sección release debe terminar con un comentario que diga /* End XCBuildConfiguration section */

8) asegúrese de que la segunda sección coincida con la primera sección para que CODE_SIGN_IDENTITY, "CODE_SIGN_IDENTITY[sdk=iphoneos*], y PROVISIONING_PROFILE estén todos rellenados.

 3
Author: bobbypage,
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
2012-04-14 09:01:36

Una sugerencia que haré ya que nadie aún lo ha dicho: POR FAVOR, POR FAVOR, haga una copia de seguridad de su totalidad .xcodeproj archivo ANTES de empezar a modificar su contenido. Arruinar el archivo del proyecto y no tener una copia de seguridad conducirá a una experiencia muy, muy desagradable.

Ser capaz de retirarse de una edición puede ser un regalo del cielo.

 2
Author: Richard Brown,
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
2011-08-17 17:39:43

Acabo de encontrar este problema en mi XCode4. Solucionarlo, necesita poner todas las disposiciones correctas en la configuración de Depuración y Liberación.

Estaba tratando de enviar (archivando) mi aplicación. Así que solo cambio las disposiciones de depuración a" No firmar código", y la disposición de Liberación a la disposición appstore de mi aplicación.

Esto lo arregla y me permite archivar normalmente. Espero que eso ayude.

 1
Author: GeneCode,
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
2011-08-19 00:42:16

Seleccione las líneas en codesigning que estén en blanco en cualquier SDK de iOS y seleccione el certificado correcto.

 1
Author: sunkencity,
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
2011-11-18 15:12:12

La solución de Brad Smith funcionó para mí, pero también tuve que eliminar el campo CODE_SIGN_IDENTITY para que funcionara.

 1
Author: jean_jean,
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
2012-11-19 15:59:34

Desafortunadamente este enfoque no funcionó para mí. Pero aquí hay una solución que funcionó para mí (para que esto funcione, necesita un archivo de proyecto que funcione en Subversion o algo así):

Hice retroceder a una versión de trabajo de mi archivo de proyecto. Como no es posible revertir con Xcode ( ¿Dónde está la opción 'Revertir' en el Control de código fuente de Xcode 4?) - Usé Tortoise, mi máquina Windows y este Tutorial ( http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html ) a volver a un archivo de proyecto anterior.

Como el Tutorial no funcionó para mí, solo usé Tortoise para guardar la revisión de trabajo de mi archivo de proyecto en una memoria USB para portarlo a mi mac. Después de eso reemplacé el nuevo archivo de proyecto roto con el viejo que funcionaba, limpié y funcionó como un encanto!

 0
Author: Chris Conway,
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 10:31:09

Estaba teniendo problemas porque actualizé mi perfil de aprovisionamiento AdHoc con algunos dispositivos nuevos para usar en TestFlight. Se supone que esto sucede porque xcode tiene una referencia antigua a su perfil de aprovisionamiento en la configuración de compilación de diseño de código para el proyecto o los destinos. La forma en que arreglé la mía fue:

  1. Vaya a configuración de compilación de destino y configuración de compilación de proyecto, en firma de código cambie todos los perfiles de aprovisionamiento a otra cosa.
  2. Ir a dispositivos / perfiles de aprovisionamiento en el organizador elimine los perfiles ofensivos y, a continuación, haga clic en el botón actualizar en la parte inferior derecha.
  3. Vuelva a la configuración de compilación de destino y proyecto y establezca sus perfiles de aprovisionamiento en los perfiles de aprovisionamiento apropiados (con suerte) recién actualizados.
 0
Author: George McKibbin,
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
2013-06-25 20:16:27

Al menos en Xcode 5, esto es lo que resolvió el problema para mí:

En perfil de aprovisionamiento, seleccione el perfil de aprovisionamiento infractor y, a continuación, seleccione un perfil de aprovisionamiento válido en el menú desplegable.

introduzca la descripción de la imagen aquí

 0
Author: RawMean,
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
2013-09-26 01:26:06

Puede eliminar la referencia antigua del archivo de aprovisionamiento. Luego, después de importar el nuevo perfil de aprovisionamiento y seleccionar Xcode builder.

 0
Author: annu,
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-03-09 12:36:21