线程冻结,同时使用setDefaultUncaughtExceptionHandler捕获未处理的异常(reportDropResult)

时间:2011-12-16 23:17:50

标签: android android-3.0-honeycomb drag unhandled-exception

当我在蜂窝上使用拖动功能时,我收到 java.lang.IllegalStateException:reportdropResult()非收件人异常。我想使用 setDefaultUncaughtExceptionHandler 来捕获它以防止关闭应用程序。它进入该方法但在此之后所有线程都冻结并且android出现强制关闭或等待模型对话框。我点击等待按钮10次,但没有任何变化。我如何防止此异常并关闭应用程序?

1 个答案:

答案 0 :(得分:1)

如果您使用setDefaultUncaughtExceptionHandler,则无法阻止应用冻结,只会让您有机会在发生时采取行动。像保存数据一样或将变量值存储到文件等中。

你必须调用super来最终显示崩溃消息,否则app会永久挂起。

为了防止这种异常,你必须找出导致它的原因,而不是试图以某种方式抓住它并让它消失。例外情况是Javas FRIENDLY方式告诉你,有些事情是错误的。