【发布时间】:2010-02-08 14:56:33
【问题描述】:
如果检测到未处理的异常,我将尝试启动错误报告活动。问题在于从主线程抛出的异常。如果主线程崩溃,有什么方法可以启动活动?
【问题讨论】:
标签: android exception-handling unhandled-exception
如果检测到未处理的异常,我将尝试启动错误报告活动。问题在于从主线程抛出的异常。如果主线程崩溃,有什么方法可以启动活动?
【问题讨论】:
标签: android exception-handling unhandled-exception
我在UncaughtExcpetionHandler 中看到的用于捕获错误的方法是将崩溃数据写入文件,然后在基于崩溃数据文件的存在重新启动应用程序时启动错误处理Activity .
根据您希望Activity 执行的操作,这可能对您有用。
【讨论】:
我认为这是错误的做法。您需要做的是确保捕获这些异常,并在捕获它们时弹出错误报告活动。
【讨论】:
您可以将属性android:process=":report_process" 添加到<activity> 元素,该元素引用您在AndroidManifest.xml 中的错误报告活动。
默认情况下,属于同一应用程序的活动将在您的包名称标识的同一进程中运行。通过设置android:process 属性,您可以覆盖它。以:开头的android:process指的是你包中的私有标识符,这样你就可以在一个新的进程中启动活动,而不会与其他包的进程发生冲突。
【讨论】: