如何拦截和处理Windows Phone应用程序的所有异常?

时间:2012-08-09 07:14:02

标签: windows-phone-7 exception

我们的产品开发没有任何测试团队支持。  所以。  我们需要拦截并处理所有异常以改善用户体验。  在Windows Phone应用程序中有没有解决方案?

在app.xaml.cs文件中作为Fllow。我们发现:

      // Code to execute on Unhandled Exceptions
    private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
    {
        if (e.ExceptionObject is QuitException)
            return;

        if (System.Diagnostics.Debugger.IsAttached)
           {
              // An unhandled exception has occurred; break into the debugger
              System.Diagnostics.Debugger.Break();
           }


        if (System.Diagnostics.Debugger.IsAttached)
        {
            // An unhandled exception has occurred; break into the debugger
            System.Diagnostics.Debugger.Break();
        }
    }

2 个答案:

答案 0 :(得分:1)

是的,这应该能够捕获您在应用中遗漏的所有例外情况。考虑到你显然没有在其他地方捕获许多异常,并且正在寻找一个简单的解决方案,这个事件处理程序可能会起作用,但我真的不推荐它。

此事件处理程序捕获异常,然后崩溃/退出您的应用程序。如果您仅在此处理了例外情况,则会导致巨大的崩溃计数。有时会发生异常,但应用程序可以继续正常工作。这就是为什么我建议您在代码中处理它们而不是在这里处理它们。这样,您可以完全控制应用程序的继续运行方式以及是否继续运行,并减少“未处理的异常”和应用程序崩溃的数量。

答案 1 :(得分:0)

将您的代码放入Try-Catch Block。我也遇到了这样的问题,但后来由异常处理方法处理。

 try
  {
   // your code
  }

 catch (Exception ex)
  {

    throw (ex);
  }