Version: 2017.4
Universal Windows Platform: Plugins on .NET Scripting Backend
Universal Windows Platform: IL2CPP scripting back end

Universal Windows Platform: Debugging on .NET Scripting Backend

When you have a crash, or a weird behavior, always check the player log which is located here - <user>\AppData\Local\Packages<productname>\TempState\UnityPlayer.log. When submitting a bug, please include the player log as well, it can give invaluable information.

Actualmente solo es posible depurar scripts C#.

Note: Universal Windows Platform are running with Microsoft .NET, that’s why it’s not possible to debug scripts with MonoDevelop, instead you have to use Visual Studio 2013.

Aquí hay unos pocos pasos de cómo hacerlo:

  • When building to Universal Windows Platform, check Unity C# projects
  • This will create Assembly-CSharp-* projects compatible with Universal Windows Apps
  • Tenga en cuenta: si antes Unity C# projects no estaba marcado, construya a una carpeta vacía o borre .sln y .csproj, ya que Unity necesita agregar referencias a aquellos archivos, pero si están presentes - Unity no los sobrescribirá.
  • Abra la solución, debería ver proyectos Assembly-CSharp-* incluidos
  • Coloque breakpoints en lugares de interes, y simplemente empiece la aplicación con el depurador.

Excepciones

Cuando usted construya la aplicación, usted puede decirle a Visual Studio que pare durante las excepciones. Vaya a Debug -> Exceptions:

  • Habilite Common Language Runtime Exceptions y Managed Debugging Assistants - para excepciones managed.
  • Habilite todas las excepciones si está obteniendo una excepción en algún lugar conocido

Tenga en cuenta: habilitar todas las excepciones hará que Visual Studio pare para las excepciones inofensivas como WinRT originate error, WinRT transform error, ignore esos y simplemente continúe.

Resolviendo el callstack de UnityPlayer.dll

Habrá casos dónde usted recibirá un fallo en el motor de Unity en sí, usted puede obtener información útil si es capaz de resolver el callstack, y proporcionarlo en el reporte de bug si se necesita.

Tenga en cuenta: Los callstacks del motor de Unity se pueden resolver si los archivos .pdb están disponibles, Unity proporciona unos archivos .pdb para configuración de Depuración.

Suppose you’ve encountered a crash in Unity engine and hit the breakpoint (Note: Visual Studio can stop at the crash if you enable all exceptions via Debug -> Exceptions menu), go to Debug -> Windows -> Call Stack, Call Stack window should open up, if you don’t see function names from UnityPlayer.dll, that means the symbols weren’t loaded, to fix that, right click on that function and Load Symbols, UnityPlayer.pdb file will be located in [PathToYourProject]>\Players\[Windows80 or Windows81]\[X86 or ARM or X64]\debug.

Microsoft-Windows-TWinUI

Este es en un log (registro) que podría proporcionar información sobre por qué la aplicación no se ejecuto con el depurador, se puede encontrar en :

Control Panel -> Administrative Tools -> Event Viewer -> Applications And Services Log -> Microsoft -> Windows -> Apps -> Microsoft-Windows-TWinUI/Operational


• 2017–05–16 Page amended with no editorial review

Universal Windows Platform: Plugins on .NET Scripting Backend
Universal Windows Platform: IL2CPP scripting back end