java - 当 Android 中发生异常时,如何让程序自动打印堆栈跟踪

标签 java android debugging stack-trace

有没有一种方法可以在发生异常时自动打印堆栈跟踪?我知道我可以通过用 try-catch 语句手动围绕一个 block 来做到这一点,但是没有先验知识在程序中会发生异常,并且在可疑区域逐 block 执行它会非常低效,因为那里'可能很多。那么在 Android 中是否有任何配置选项或任何编程方式来做到这一点?(比如在最高级别的方法中包围一个 try-catch block ?但最高级别的方法是什么)

最佳答案

在您的 Application 类中定义一个全局异常处理程序,并向其中添加您需要的任何代码。

Thread.setDefaultUncaughtExceptionHandler(
                new DefaultExceptionHandler(this));

建议您仍然重新抛出捕获的异常,以便应用停止运行,因为它会处于不稳定状态,不这样做会导致应用卡死。

关于java - 当 Android 中发生异常时,如何让程序自动打印堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20115403/

相关文章:

java - 从 Socket.getInputStream() 抛出 NullPointerException

Android - 将 RC4 与密码一起使用

Java 平均值返回无穷大

html - 提交断点 - Chrome 开发者工具

c - 卡在 GStreamer 日志记录上

c# - System.Diagnostics.Debug.Write 输出出现在哪里?

java - 500 内部服务器错误 v3 上传 API : GoogleJsonResponseException

java - 使用假服务器进行集成测试

android - 如何查看使用Android模拟器(没有Android Studio)运行应用程序时发生的错误的堆栈跟踪

java - 如何让Jetty动态加载 "static"页面