Version: 2019.2
App thinning
Características actualmente no soportadas por Unity iOS.

Seguimientos de pila administrados en iOS

Cuando se produce una excepción en el código administrado, el seguimiento de la pila de la excepción puede ayudarlo a comprender la causa de la excepción. Sin embargo, el seguimiento de la pila administrada podría no aparecer como se esperaba en algunos casos en iOS, como se explica a continuación. El seguimiento de la pila también varía según la configuración de compilación de Xcode.

Construcciones de depuración

Cuando utiliza la configuración de compilación de depuración con iOS, IL2CPP debe informar un seguimiento confiable de la pila administrada e incluir cada método administrado en la pila de llamadas. El seguimiento de la pila no incluye los números de línea del código fuente original de C#.

Construcciones de lanzamiento

Cuando utiliza una configuración de lanzamiento de compilación, IL2CPP puede generar una pila de llamadas a la que le faltan uno o más métodos administrados. Esto se debe a que el compilador de C++ ha introducido los métodos faltantes. La alineación de métodos generalmente es buena para el rendimiento en tiempo de ejecución, pero puede hacer que las pilas de llamadas sean más difíciles de comprender. IL2CPP siempre proporciona al menos un método administrado en la pila de llamadas. Este es el método donde ocurrió la excepción. También incluye otros métodos si no están en línea.

Si puede reproducir una excepción localmente, use Xcode para determinar qué métodos se han insertado. Ejecute la aplicación en Xcode utilizando la configuración de lanzamiento y establezca un punto de interrupción de excepción. La vista de pila de llamadas nativa en Xcode debe indicar qué métodos existen realmente y cuáles han sido insertados.

Números de línea de código fuente

Las pilas de llamadas IL2CPP no incluyen la información del número de línea del código fuente en las configuraciones de depuración o liberación.


  • 21 March 2018 Page published
App thinning
Características actualmente no soportadas por Unity iOS.