Pregunta

Estoy buscando probar y symbolicate mi iPhone de la aplicación de los informes de errores.

He recuperado los informes de errores de iTunes Connect.He binario de la aplicación que he presentado a la App Store y tengo el archivo dSYM que se ha generado como parte de la construcción.

Yo tengo todos estos archivos dentro de un directorio único que está indexado por el centro de atención.

¿Y ahora qué?

He intentado invocar:

symbolicatecrash crashreport.crash myApp.app.dSYM

y sólo salidas del mismo texto que está en el informe del accidente para empezar, no symbolicated.

Estoy haciendo algo mal?

¿Fue útil?

Solución

Pasos para analizar el informe de accidente de apple:

  1. Copia de la liberación .archivo de aplicación que fue empujado a la appstore, la .dSYM archivo que se creó en el momento de la liberación y el informe de accidente de recepción de APPLE en un CARPETA.

  2. ABRA el terminal de la aplicación y vaya a la carpeta creada anteriormente (el uso de cd comando)

  3. Ejecutar atos -arch armv7 -o APPNAME.app/APPNAME MEMORY_LOCATION_OF_CRASH.La ubicación de la memoria debe ser aquel en el que la aplicación se estrelló según el informe.

Ex: atos -arch armv7 -o 'APPNAME.app'/'APPNAME' 0x0003b508

Esto demostraría que la línea exacta, el nombre del método que resultó en la caída.

Ex: [classname functionName:]; -510

Symbolicating IPA

si hacemos uso de IPA para symbolicating - acaba de cambiar el nombre de la extensión .ipa .zip , extraer, entonces podemos obtener una capacidad de Carga de la Carpeta que contiene la aplicación.En este caso no necesitamos .archivo dSYM.

Nota

Esto sólo puede funcionar si la aplicación binaria no tiene símbolos despojado.Por defecto, las versiones de lanzamiento despojado de los símbolos.Podemos cambiar esto en la configuración de generación de proyecto "Tira de los Símbolos de Depuración Durante la Copia" a NO.

Más detalles ver esto post

Otros consejos

Después de leer todas estas respuestas aquí con el fin de symbolicate un registro de bloqueo (y finalmente tener éxito) Creo que hay algunos puntos que faltan aquí que son realmente importantes para determinar la razón por la invocación de symbolicatecrash no produce una salida symbolicated.

Hay 3 activos que tienen que encajar cuando symbolicating un registro de bloqueo:

  1. El archivo de registro de bloqueo en sí (es decir example.crash), ya sea exportado desde el organizador de XCode o recibido de iTunes Connect.
  2. El paquete .app (es decir example.app) que a su vez contiene el binario de aplicación que pertenece a la registro de bloqueo. Si usted tiene un paquete de .ipa (es decir example.ipa) entonces se puede extraer el paquete .app por descomprimir el paquete .ipa (es decir unzip example.ipa). A continuación, el paquete de .app reside en la carpeta Payload/ extraído.
  3. El paquete .dSYM que contiene los símbolos de depuración (es decir example.app.dSYM)

Antes de comenzar symbolication debe comprobar si todos esos artefactos coinciden, lo que significa que el registro de bloqueo pertenece al binario que tiene y que los símbolos de depuración son los producidos durante la construcción de ese binario.

Cada binaria se conoce por un UUID que se puede ver en el archivo de registro de bloqueo:

...
Binary Images:
0xe1000 -    0x1f0fff +example armv7  <aa5e633efda8346cab92b01320043dc3> /var/mobile/Applications/9FB5D11F-42C0-42CA-A336-4B99FF97708F/example.app/example
0x2febf000 - 0x2fedffff  dyld armv7s  <4047d926f58e36b98da92ab7a93a8aaf> /usr/lib/dyld
...

En este extracto del registro de bloqueo pertenece a una imagen binaria aplicación llamada example.app/example con aa5e633efda8346cab92b01320043dc3 UUID.

Puede comprobar el UUID del paquete binario que tiene con dwarfdump:

dwarfdump --uuid example.app/example
UUID: AA5E633E-FDA8-346C-AB92-B01320043DC3 (armv7) example.app/example

A continuación usted debe comprobar si los símbolos de depuración También tiene que pertenecen a binario:

dwarfdump --uuid example.app.dSYM
UUID: AA5E633E-FDA8-346C-AB92-B01320043DC3 (armv7) example.app.dSYM/Contents/Resources/DWARF/example

En este ejemplo, todos los activos encajan entre sí y que debe ser capaz de symbolicate su StackTrace.

Procedimiento para el guión symbolicatecrash:

En Xcode 8.3 usted debería ser capaz de invocar la secuencia de comandos a través de

/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash -v example.crash 2> symbolicate.log

Si no está allí es posible que encuentre un find . -name symbolicatecrash en su directorio Xcode.app para encontrarlo.

Como se puede ver que no hay más parámetros dados. Así que el guión tiene que encontrar su aplicación binaria y símbolos de depuración mediante la ejecución de una búsqueda de Spotlight. Se busca en los símbolos de depuración con un índice específico denominado com_apple_xcode_dsym_uuids. Puede hacerlo usted mismo búsqueda:

mdfind 'com_apple_xcode_dsym_uuids = *'

resp.

mdfind "com_apple_xcode_dsym_uuids == AA5E633E-FDA8-346C-AB92-B01320043DC3"

La primera invocación centro de atención le da todos los paquetes dSYM indexado y el segundo le da los paquetes .dSYM con un UUID específico. Si proyector no encuentra su paquete .dSYM continuación se symbolicatecrash ninguno. Si haces todo esto, por ejemplo, en una subcarpeta de su centro de atención ~/Desktop debería ser capaz de encontrar todo.

Si symbolicatecrash encuentra su paquete .dSYM debe haber una línea como la siguiente en symbolicate.log:

@dsym_paths = ( <SOME_PATH>/example.app.dSYM/Contents/Resources/DWARF/example )

En la búsqueda de su paquete de .app una búsqueda centro de atención como la siguiente es invocado por symbolicatecrash:

mdfind "kMDItemContentType == com.apple.application-bundle && (kMDItemAlternateNames == 'example.app' || kMDItemDisplayName == 'example' || kMDItemDisplayName == 'example.app')"

Si symbolicatecrash encuentra su paquete .app no debe ser el siguiente extracto de symbolicate.log:

Number of symbols in <SOME_PATH>/example.app/example: 2209 + 19675 = 21884
Found executable <SOME_PATH>/example.app/example
-- MATCH

Si todos esos recursos se encuentran por symbolicatecrash se debe imprimir la versión symbolicated de su registro de bloqueo.

Si no se puede pasar en su dSYM y archivos .app directamente.

symbolicatecrash -v --dsym <SOME_PATH>/<App_URI>.app.dSYM/<APP_NAME>.app.dsym <CRASHFILE> <SOME_OTHER_PATH>/<APP_NAME>.app/<APP_NAME> > symbolicate.log

Nota:. La traza symbolicated saldrá a la terminal, no symbolicate.log

Con la última versión de Xcode (3.2.2), puede arrastrar y soltar los informes de fallos en la sección de registros de dispositivos de la Xcode Organizador y que tendrá automáticamente por symbolicated para usted. Creo que esto funciona mejor si usted construyó esa versión de la App utilizar Preparar y Archivo (también parte de Xcode 3.2.2)

Lo he hecho con éxito, utilizando los siguientes pasos.

Paso 1: Crea una carpeta en el escritorio, que dan nombre a "CrashReport" y puse tres archivos ( "MyApp.app.dSYM" "MYApp.app", "MYApp_2013-07 -18.crash ") en el mismo.

Paso 2: Abre el Finder y vaya a Aplicaciones, donde se encuentra la aplicación de Xcode, haga clic derecho sobre este y luego en "Mostrar contenido del paquete", después de esto sigue este camino simple.  "Contenido-> Desarrollador> Platforms-> iPhoneOS.platform-> Desarrollador> Biblioteca-> PrivateFrameworks -> DTDeviceKit.framework -> VERSIONS-> A-> Recursos"

o

"Contenido-> Desarrollador> Platforms-> iPhoneOS.platform-> Desarrollador> Biblioteca-> PrivateFrameworks -> DTDeviceKitBase.framework -> VERSIONS-> A-> Recursos"

o

Para Xcode 6 y por encima de la ruta es Aplicaciones / Xcode.app / Contenido / SharedFrameworks / DTDeviceKitBase.framework / Versiones / A / Recursos

¿Dónde se encuentra el archivo "symbolicatecrash", copiar esto y pegarlo en la carpeta "CrashReport".

Paso 3: lanzar el terminal, ejecute estos 3 comandos

  1. botón cd / Users / mac38 / Escritorio / CrashReport y pulse Intro

  2. DEVELOPER_DIR exportación = "/ Aplicaciones / Xcode.app / Contenidos / desarrollador" y pulse Intro

  3. ./ symbolicatecrash -A -v MYApp_2013-07-18.crash MyApp.app.dSYM y pulse Enter Ahora su hacer .. (Nota: Las versiones alrededor de 6.4 o más adelante no tienen la opción -A - acaba de salir de ella fuera).

Pasos para symbolicate un informe de bloqueo de forma automática utilizando XCode:

ACTUALIZACIÓN DE XCODE 9

  1. Conectar cualquier dispositivo iOS al Mac (sí uno físico, sí sé que esto es estúpida)

  2. Seleccione "Dispositivos" en el menú "Ventana" introducir descripción de la imagen aquí

  3. Haga clic en el dispositivo en los registros de dispositivos izquierda y ver a la derecha introducir descripción de la imagen aquí

  4. Espera. Puede ser que tome un minuto en aparecer. Tal vez haciendo Command-A continuación Delete será acelerar este proceso.

  5. indocumentado paso crítico: cambiar el nombre del informe de error que recibió de iTunesConnect de extensión .txt a .crash extensión

  6. Arrastre el informe de bloqueo en esa área de la izquierda introducir descripción de la imagen aquí

Y luego Xcode symbolicate el informe de bloqueo y mostrar los resultados.

Fuente: https://developer.apple.com/library/ ios / notas técnicas / tn2151 / _index.html

Yo uso Airbrake en mis aplicaciones, que hace un trabajo bastante bueno de registro de errores remoto.

Así es como yo les symbolicate con atos si el trazado inverso lo necesita:

  1. En Xcode (4.2) hasta llegar al organizador, haga clic derecho en el archivo de que se generó el archivo .ipa.

  2. En la Terminal, cd en el xcarchive por ejemplo MyCoolApp 10-27-11 1.30 PM.xcarchive

  3. Introduzca el siguiente atos -arch armv7 -o 'MyCoolApp.app'/'MyCoolApp' (No se olvide de las comillas simples)

  4. No incluyo mi símbolo en esa llamada. Lo que se obtiene es un cursor de bloque en una línea vacía.

  5. Luego de copiar / pegar el código de símbolos en ese cursor de bloque y pulse entrar. Usted verá algo como:

    -[MyCoolVC dealloc] (in MyCoolApp) (MyCoolVC.m:34)

  6. Estás de vuelta a un cursor de bloque y se puede pegar en otros símbolos.

Ser capaz de pasar por su traza un elemento sin necesidad de volver a entrar en el primer bit es un buen ahorro de tiempo.

Disfrute!

También puse dsym, haz aplicación y registro de bloqueo juntos en el mismo directorio antes de ejecutar accidente symbolicate

A continuación, utilizo esta función definida en mi .profile para simplificar la ejecución symbolicatecrash:

function desym
{
    /Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash -A -v $1 | more
}

Los argumentos añaden que puede ayudarle.

Puede comprobar para asegurarse de atención "ve" sus archivos dysm ejecutando el comando:

mdfind 'com_apple_xcode_dsym_uuids = *'

Busque el dsym que tiene en su directorio.

NOTA: A partir de la última Xcode, ya no es un directorio desarrollador. Usted puede encontrar esta utilidad aquí:

/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Vers iones / A / Recursos / symbolicatecrash

Sólo una respuesta sencilla y actualizada para Xcode 6.1.1.

PASOS

1.Xcode> Ventana> Dispositivos.

2.Select un dispositivo de una lista de dispositivos en la sección dispositivos.

3.Seleccione Registros vista de dispositivos.

4.Under la sección Todos los registros se pueden arrastrar directamente caer el report.crash

5.Xcode se Symbolicate automáticamente el informe de bloqueo para usted.

6.You puede encontrar el informe de bloqueo Symbolicated, haciendo coincidir su fecha / hora con la fecha / hora menciona en su informe de accidente.

A pesar de que había estado desarrollando aplicaciones para un par de años, esta fue mi primera vez la depuración de un binario y me sentí como un novato completa averiguar dónde estaban todos los archivos es decir, cuando es .app * * .dSYM y registros de choque ? Tuve que leer varios mensajes con el fin de averiguarlo. Imagen vale más que mil palabras y espero que este post ayuda a cualquier otra persona en el futuro.

1- Primero vaya a iTunesConnect y descargar sus registros de errores. NOTA: Es posible que la mayoría de los casos se consigue algo como "muy pocos informes han sido sometidos a un informe que se muestra." Básicamente no hay suficientes usuarios no han presentado informes de registro de bloqueo a Apple en cuyo caso no se puede hacer nada en ese momento.

introducir descripción de la imagen aquí

introducir descripción de la imagen aquí

2- Ahora bien, si usted no había cambiado su código ya que había presentado su binario a Apple a continuación, iniciar Xcode para ese proyecto y hacer del producto -> Archivo de nuevo. De lo contrario sólo encontrar su última presentó binario y haga clic derecho sobre él.

introducir descripción de la imagen aquí

introducir descripción de la imagen aquí

introducir descripción de la imagen aquí

introducir descripción de la imagen aquí

En Xcode 4.2.1, abierta Organizador , y luego ir a Registros Biblioteca / dispositivo y arrastrar el archivo .crash en la lista de registros de errores. Se symbolicated para usted después de unos segundos.

Tenga en cuenta que debe utilizar la misma instancia de Xcode que la construcción original fue archivada en (es decir, el archivo para su construcción debe existir en Organizador ).

El uso de Xcode 4, la tarea es aún más simple:

  • open Organizador ,
  • Haga clic en Biblioteca | Dispositivo de registro en la columna de la izquierda
  • Haga clic en " Importar " botón en la parte inferior de la pantalla ...

y listo. El archivo de registro se importa y Simbolizado automáticamente. Siempre y cuando la acumulación archivados utilizando Xcode -> Productos -.> Archivo nombre

El mágico Xcode Organizador no es tan mágico sobre symbolicating mi aplicación. No tengo símbolos en absoluto para los informes de fallos que regresé a Apple de un sometimiento aplicación fallado.

He intentado utilizar la línea de comandos, poniendo el informe de bloqueo en la misma carpeta que el archivo .app (que presenté a la tienda) y el archivo .dSYM:

$ symbolicatecrash "My App_date_blahblah-iPhone.crash" "My App.app"

Esto sólo prestados símbolos para mi aplicación y no el código base fundamental, pero era mejor que el vertedero Organizador número que me está dando y fue suficiente para mí para encontrar y corregir el accidente que tuvo mi aplicación. Si alguien sabe cómo extender esto para obtener símbolos de la Fundación se agradecería.

En mi caso, yo estaba arrastrando los informes de fallos directamente de Correo al Organizador. Por alguna razón, que impedía que los informes de fallos de conseguir symbolicated (me gustaría saber por qué).

Copia de los informes de fallos en el escritorio, y luego arrastrarlos desde allí al Organizador los consiguió symbolicated correctamente.

caso muy específico, lo sé. Pero pensé en compartir por si acaso.

Aquí hay otro problema que tengo con symbolicatecrash - que no funcionará con aplicaciones que tengan espacios en su conjunto (es decir, 'Test App.app'). En cuenta que no creo que se pueda tener espacios en su nombre al presentar lo que debe eliminar estos modos, pero si ya tiene los accidentes que necesitan analizar, symbolicatecrash parche (4.3 GM) como tal:

240c240
<         my $cmd = "mdfind \"kMDItemContentType == com.apple.application-bundle && kMDItemFSName == $exec_name.app\"";
---
>         my $cmd = "mdfind \"kMDItemContentType == com.apple.application-bundle && kMDItemFSName == '$exec_name.app'\"";
251c251
<             my $cmd = "find \"$archive_path/Products\" -name $exec_name.app";
---
>             my $cmd = "find \"$archive_path/Products\" -name \"$exec_name.app\"";

Para aquellos que utilizan Airbrake, hay una respuesta sólida anteriormente, pero que no funcionaría para mí sin ajustar:

funciona para algunas direcciones de memoria, pero no a otros, sin saber por qué ...

  • Crear nuevo directorio en el escritorio o donde
  • Buscar archivo en cuestión en el organizador de Xcode
  • Doble toque para revelar en el buscador
  • Doble toque para mostrar contenido del paquete
  • Copiar archivo .dSYM y archivo .app en el nuevo dir
  • cd al nuevo directorio
  • Ejecutar este comando: atos -arch ARMv7 -o 'Vimeo.app' / 'Vimeo'
  • Terminal entrará en un movimiento interactivo
  • Pegar en la dirección de memoria y pulsa ENTER, el nombre del método de salida y número de línea
  • Como alternativa, introduzca este comando: atos -arch ARMv7 -o 'Vimeo.app' / 'Vimeo' Para obtener información para una dirección única

La combinación que funcionó para mí fue:

  1. Copie el archivo en el directorio dSYM donde estaba el informe de bloqueo
  2. Descomprimir el archivo IPA que contiene la aplicación ( 'MyApp.ipa descomprimir')
  3. Copia el binario de la aplicación de la carga útil explotado resultante en la misma carpeta que el informe de bloqueo y archivo de símbolos (Algo así como "MyApp.app/MyApp")
  4. Importar o Re-symbolicate el informe de bloqueo desde el interior de organizador de Xcode

Uso de atos que no era capaz de resolver la información de símbolos correcta con las direcciones y las compensaciones que se encontraban en el informe de bloqueo. Cuando hice esto, veo algo más significativo, y parece ser un seguimiento de la pila legítimo.

que tenía que hacer una gran cantidad de piratería del guión symbolicatecrash a conseguir que se ejecute correctamente.

Por lo que yo puedo decir, symbolicatecrash ahora requiere la .app a estar en el mismo directorio que el .dsym. Se utilizará el .dsym para localizar el .app, pero no va a utilizar el dsym para encontrar los símbolos.

Usted debe hacer una copia de su symbolicatecrash antes de intentar estos parches lo que hará que se vea en el dsym:

alrededor de la línea 212 en la función getSymbolPathFor_dsymUuid

212     my @executablePath = grep { -e && ! -d } glob("$dsymdir" . "/Contents/Resources/DWARF/" . $executable);

alrededor de la línea 265 en la función matchesUUID

265             return 1;

Esto es simple, después de buscar mucho me encontré con medidas claras para symbolicate archivo de registro de bloqueo conjunto.

    archivos
  • copia .app, crash_report y DSYM en una carpeta.
  • conectar el dispositivo con Xcode
  • A continuación, vaya a la ventana -> seleccione los dispositivos -> ver los registros de dispositivos
  • A continuación, seleccione este dispositivo, borrar todos los registros.
  • arrastrar y soltar su accidente en la sección de registro de dispositivo. se symbolicate automáticamente el accidente. simplemente haga clic derecho en el informe y exportarlo.

codificación feliz,
Riyaz

Yo prefiero un guión que symbolicate todos mis registros de errores.

Condiciones previas

Crea una carpeta y poner allí 4 cosas:

  1. symbolicatecrash perl guión - hay muchos SO respuestas que le dice a su ubicación

  2. El archivo de la versión que coincide con los accidentes (de Xcode Organizador. Simple como Show in Finder y copia) [yo no es seguro que esto necessery]

  3. Todos los paquetes xccrashpoint - (. De Xcode Organizador Show in Finder, es posible copiar todos los paquetes en el directorio, o la única xccrashpoint que le gustaría symbolicate)

  4. Añadir que corta secuencia en el directorio:

    #!/bin/sh
    
    echo "cleaning old crashes from directory"
    rm -P *.crash
    rm -P *.xccrashpoint
    rm -r allCrashes
    echo "removed!"
    echo ""
    echo "--- START ---"
    echo ""
    
    mkdir allCrashes
    mkdir symboledCrashes
    find `ls -d *.xccrashpoint` -name "*.crash" -print -exec cp {} allCrashes/ \;
    
    cd allCrashes
    for crash in *.crash; do
        ../symbolicatecrash $crash > ../symboledCrashes/V$crash
    done
    cd ..
    
    echo ""
    echo "--- DONE ---"
    echo ""
    

The Script

Cuando se ejecuta la secuencia de comandos, obtendrá 2 directorios.

  1. allCrashes -. Todos los accidentes de todo el xccrashpoint estará allí

  2. symboledCrashes - los mismos accidentes, pero ahora con todos los símbolos

  3. .
  4. NO es necesario para limpiar el directorio de los viejos choques antes de ejecutar la secuencia de comandos. se limpiará automáticamente. buena suerte!

Con el fin de symbolicate accidentes, proyector debe ser capaz de encontrar el archivo .dSYM que se generó al mismo tiempo, el binario que ha enviado a Apple fue. Ya que contiene la información de símbolos, va a estar fuera de suerte si no está disponible.

Me dieron un poco de mal humor sobre el hecho de que aquí nada parece "sólo trabajo" así que hice algunas investigaciones y el resultado es:

Configurar: QuincyKit back-end que recibe informes. No se estableció symbolication ya que no podía ni siquiera comenzar a entender lo que se sugiere que hago para que funcione.

La solución: los informes de fallos de descarga desde el servidor en línea. Se les conoce como 'accidente' y por defecto van en la carpeta ~ / Descargas /. Con esto en mente, este script "hacer lo correcto" y los informes de fallos voy a entrar en Xcode (Organizador, registros de dispositivos) y symbolication se hará.

La secuencia de comandos:

#!/bin/bash
# Copy crash reports so that they appear in device logs in Organizer in Xcode

if [ ! -e ~/Downloads/crash ]; then 
   echo "Download a crash report and save it as $HOME/Downloads/crash before running this script."
   exit 1
fi

cd ~/Library/Logs/CrashReporter/MobileDevice/
mkdir -p actx # add crash report to xcode abbreviated
cd actx

datestr=`date "+%Y-%m-%d-%H%M%S"`

mv ~/Downloads/crash "actx-app_"$datestr"_actx.crash"

Las cosas pueden ser automatizados a donde se puede arrastrar y soltar en Xcode Organizador haciendo dos cosas si usted hace uso de QuincyKit / PLCR.

En primer lugar, usted tiene que editar el script de control remoto admin / actionapi.php ~ línea 202. No parece para obtener el derecho de marca de tiempo, por lo que el archivo termina con el nombre de 'crash', que no reconoce Xcode ( quiere algo accidente punto):

header('Content-Disposition: attachment; filename="crash'.$timestamp.'.crash"');

En segundo lugar, en el lado IOS en línea QuincyKit BWCrashReportTextFormatter.m ~ 176, el cambio @"[TODO]" a @"TODO" de moverse por los malos caracteres.

atos está en desuso por lo que si está ejecutando OSX 10.9 o posterior puede que tenga que ejecutar

xcrun atos

  

Advertencia: / usr / bin / atos se está moviendo y será retirado de un futuro OS   X liberación. Ahora está disponible en las herramientas de desarrollo Xcode estar   invocada a través de: xcrun atos

Me gusta usar Textwrangler para localizar errores en una aplicación original de cargar el rechazo binario. (Los datos de accidentes se encuentran en su cuenta iTunesConnect.) Utilizando el método anterior de Sachin copio el original.crash a TextWrangler, a continuación, copiar el archivo symbolicatecrash He creado a otro archivo TextWrangler. Al comparar los dos archivos identifica diferencias. El archivo symbolicatecrash tendrá diferencias que señalan el archivo y la línea número de problemas.

Me enteré de que la mayoría de las propuestas alternativas no funciona en la última versión de XCode (probado con Xcode 10).Por ejemplo, yo no tenía la suerte de arrastrar-soltar .los registros de bloqueo en Xcode -> Organizador> registros del Dispositivo -ver.

Recomiendo el uso de Symbolicator herramienta https://github.com/agentsim/Symbolicator

  • Git clone Symbolicator repositorio y compilar y ejecutar con Xcode
  • Copia .bloqueo de archivos (archivo ascii, con el seguimiento de la pila en la mendicidad de fichero).xarchive de estrellarse liberación a la misma carpeta temporarly
  • Arrastrar y soltar .bloqueo de archivos para Symbolicator icono en el Dock
  • En 5-30 segundos symbolicated accidente se produce un archivo en la misma carpeta .choque y .xarchive son

Utilizamos Google Crashlytics para supervisar los registros de errores, la sensación es muy oportuna y conveniente de usar.

referencias de los documentos: https://docs.fabric.io/apple/crashlytics/ missing-dsyms.html # faltante-dsyms

Todo sobre dSYMs que faltan Tela incluye una herramienta para cargar automáticamente dSYM de su proyecto. La herramienta se ejecuta a través del / script ejecutar, que se añade a la fase de ejecución del script de creación durante el proceso de incorporación. Puede haber ciertas situaciones, sin embargo, cuando las subidas dSYM fallan debido a configuraciones únicas del proyecto o si está utilizando código binario en su aplicación. Cuando falla la carga, Crashlytics no es capaz de symbolicate y los accidentes de visualización, y una alerta de “Missing dSYM” aparecerá en su panel de control de la tela.

dSYMs que faltan se pueden cargar manualmente siguiendo los pasos que se indican a continuación.

Nota: Como alternativa a la herramienta dSYM carga automatizado, Tela ofrece una herramienta de línea de comandos (Enviar) símbolos) que se puede configurar manualmente para funcionar como parte del proceso de construcción de su proyecto. Ver la sección de carga-símbolos a continuación las instrucciones de configuración.

...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top