如果这是主线程崩溃,如何从UncaughtExceptionHandler启动活动?

时间:2010-02-08 14:56:33

标签: android exception-handling unhandled-exception

如果检测到未处理的异常,我正在尝试启动错误报告活动。问题是从主线程抛出的异常。如果主线程崩溃,有没有办法启动活动?

3 个答案:

答案 0 :(得分:7)

我看到用于在UncaughtExcpetionHandler中捕获错误的方法是将崩溃数据写入文件,然后在应用程序重新启动时根据是否存在而启动错误处理Activity崩溃数据文件。

根据您希望Activity做什么,这可能对您有用。

答案 1 :(得分:1)

我认为这是错误的做法。您需要做的是确保捕获这些异常,并在捕获它们时弹出错误报告活动。

答案 2 :(得分:1)

您可以将属性android:process=":report_process"添加到<activity>元素,该元素引用AndroidManifest.xml中的错误报告活动。

默认情况下,属于同一个应用程序的活动将在程序包名称标识的同一进程中运行。通过设置android:process属性,您可以覆盖此属性。 android:process:开头是指您的包中的私有标识符,这样您就可以在新流程中启动活动,而不会与其他包的进程冲突。