Xcode 4 fallo al simbolizar el Registro de bloqueos


Acabo de actualizar mi Xcode a 4.0.1. Ahora tengo un problema con la simbolización de los registros de bloqueo recibidos de mi probador e incluso de mi teléfono también.

Cuando construyo la distribución AdHoc estoy usando el esquema "Arhive", entonces creo el *.archivo ipa cantándolo con mis credenciales de desarrollador.

¿Este es el problema? Y no puedo encontrar los archivos dSYM para estas compilaciones AdHoc.

Author: Andrei Neacsu, 2011-03-28

6 answers

Además de la respuesta de coob, encuentro que agregar estos directorios a la lista de ignorados de Spotlight (Preferencias del sistema → Spotlight → Privacidad) ayuda:

  • ~/Library/Developer/Xcode/DerivedData/ (Xcode 4 construir artefactos)
  • ~/Library/Application Support/iPhone Simulator/ (sistema de archivos para el simulador de iPhone)

Así:

Ajustes de Spotlight para suprimir inútiles .archivos de aplicaciones

(Ver esta entrada del blog para más detalles.)

Actualización : de un comentario de joerick: "Esto funciona, pero también significaba que los instrumentos.aplicación no pudo encontrar los símbolos de depuración, así que tuve que eliminar DerivedData de la lista de privacidad para hacer algunos perfiles.- ten esto en cuenta si usas Instrumentos.

 24
Author: Simon Whitaker,
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 11:53:21

Para mí, ni la edición de la línea 323 ni las exclusiones de Spotlight lo arreglaron. Así que rastreé los problemas en symbolicatecrash y publiqué una versión parcheada en github . Simplemente reemplace /usr / local/bin / symbolicatecrash y sus informes de fallas de iOS comenzarán a simbolizar nuevamente.

Este parche puede no funcionar para aplicaciones de Mac, ya que hace suposiciones sobre la estructura de la .xcarchive directorio que no parecen contener para aplicaciones de escritorio.

Editar: es posible que aún tenga problemas si Spotlight no ha indexado tus archivos. Puede obtener forzar un índice ejecutando lo siguiente en una terminal:

mdimport ~/Library/Developer/Xcode/Archives/

Más información sobre la solución de problemas aquí.

 24
Author: Christopher Pickslay,
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-09-02 04:17:53

El script de simbolización está teniendo un problema para encontrar el binario/dSYM correcto. Usa Spotlight para hacer esto y, a menudo, se agarra. Aquí hay algunas cosas para probar:

  1. Asegúrese de su .la aplicación no tiene espacio en él.

  2. Se puede encontrar la versión de su aplicación instalada en el simulador (al revés, pero a veces lo hace esto para mí). Reinicia tu simulador.

  3. Borra tu directorio de compilación.

 3
Author: Alastair Stuart,
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-03-29 13:13:33

Hoy tuve el mismo problema. De mi investigación en la web, hay un problema con las bibliotecas armv6 que hacen que el proceso de simbolizar falle. Encontré la respuesta en los foros de desarrollo aquí.

Para aquellos sin acceso, necesita crear una copia del script symbolicatecrash desde /Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/. Edite el archivo y reemplace el ' die 'en la línea 323 con un 'print' (por eso no funciona, el script falla aquí).

Luego ejecute symbolicatecrash contra su registro de bloqueos. Verás el error de línea 323, pero entonces simbolizará todas las sus líneas y variables. Todavía falla para las bibliotecas del sistema, pero da suficiente información para corregir sus propios errores.

Espero que esto ayude.

 3
Author: Hiltmon,
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-03-30 19:21:22

Creo que tuve este problema, o algo similar. Xcode 4.0 no estaba mostrando los símbolos de un accidente que tuve de un probador. Parecía arreglar esto abriendo el xarchive que había creado y copiando el archivo dsym desde dentro (haga clic derecho y 'ver contenido del paquete') para sentarse junto a él en la carpeta de archivo. No puedo garantizar que esta fuera la solución - estaba probando una serie de otras soluciones en ese momento, pero sé que tengo los símbolos ahora y no antes. ¿Vale la pena intentarlo?

 0
Author: Nic,
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-03-30 18:13:33

Para localizar un archivo dSYM basado en su ID en un crashlog que se vea así:

Imágenes Binarias: 0x100000000 - 0x100021ff7 + com.desarrollador.foobar 1.1 (2) /Applications/FooBar.app / Contents/macOS / FooBar

Puedes hacer:

Mdfind com_apple_xcode_dsym_uuids = = D1B7F956-7D79-3D4D-BA53-E9EBB368A9F8

Para las aplicaciones OSX construidas con "DWARF with dSYM", en realidad no necesita el archivo dSYM y puede utilizar el enfoque manual en https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATE_WITH_ATOS

Además para comprobar el UID de un binario se puede hacer algo como

dwarfdump --uuid /Users/valexa/Desktop/GPSnote.app/GPSnote 

UUID: 6194D2B0-4E61-3834-AD15-C279EB1848XX (armv7)
UUID: D1B7F956-7D79-3D4D-BA53-E9EBB368A9F8 (armv7s)

 0
Author: valexa,
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
2018-02-15 17:34:00