Version: 5.5
Приложения Windows Store: Плагины
Windows Store: IL2CPP Scripting Backend

Windows Store Apps: 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.

В настоящее время возможна отладка только C# скриптов.

Note: Windows Store Apps 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.

Вот несколько простых шагов процесса отладки:

  • When building to Windows Store Apps, check Unity C# projects
  • В результате будут созданы Assembly-CSharp-* проекты, совместимые с приложениями Windows Store
  • Note: if previously Unity C# projects was unchecked, build to empty folder or delete .sln and .csproj, because Unity needs to add references to those files, but if they’ll be present - Unity won’t overwrite them
  • Откройте решение (solution) и вы должны будете увидеть включенные в решение проекты Assembly-CSharp-*
  • Расставьте точки прерывания в интересующих вас местах, и просто запустите приложение с отладчиком

Исключения

When you run the application, you can tell Visual Studio to stop during exception. Go to Debug -> Exceptions:

  • Включите Common Language Runtime Exceptions и Managed Debugging Assistants - для managed исключений
  • Включите все исключения, если вы получете исключение в неком неизвестном месте

Note: enabling all exceptions will make Visual Studio to stop even at the harmless exceptions like WinRT originate error, WinRT transform error, ignore those and simply continue

Получение стэка вызовов (callstack) из UnityPlayer.dll

Могут быть случаи, в которых “падает” сам движок Unity, в таких случаях вы можете получить полезную информацию, если вам удастся получить стек вызовов и при необходимости вы сможете прикрепить его к сообщению об ошибке.

Note: Callstacks from Unity engine can be resolved if .pdb files are available, Unity provides .pdb files for Debug configuration.

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

Это лог, который может предоставить информацию о том, почему ваше приложение не запускается без отладчика, найти его можно здесь:

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

Приложения Windows Store: Плагины
Windows Store: IL2CPP Scripting Backend