Unity创建的WP8.1应用程序在启动时因TypeInitializationException而崩溃

时间:2015-08-06 13:34:39

标签: c# unity3d windows-phone-8.1

我在Unity3D中创建了一个简单的游戏,并创建了一个Windows Phone版本。但是,当我尝试运行游戏时,会立即使用TypeInitializationException崩溃。

崩溃发生在生成的MainPage.xaml.cs文件中,在构造函数中:

// Constructor
public MainPage()
{
    var bridge = new UnityBridge();
    UnityApp.SetBridge(bridge);
    InitializeComponent();
    bridge.Control = DrawingSurfaceBackground; // <--- This line = crash
}

确切的错误是这样的:

TypeInitializationException was unhandled by user code

An exception of type 'System.TypeInitializationException' occurred in WinRTBridge.DLL but was not handled in user code

Additional information: The type initializer for 'WinRTBridge.WinRTBridge' threw an exception.

为什么会这样?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

当类初始值设定项无法初始化类型时,会创建TypeInitializationException并传递对类型的类初始化程序抛出的异常的引用。 InnerException的{​​{1}}属性包含基础异常。尝试记录此属性,看看实际导致异常的原因。另一种方法是将它包装在TypeInitializationException块中。