Java android是否有记录应用程序中每个异常的全局接口?

Java android是否有记录应用程序中每个异常的全局接口?,java,android,android-fragments,android-activity,android-developer-api,Java,Android,Android Fragments,Android Activity,Android Developer Api,我想跟踪我的Android项目中所有类型的异常,避免从每个catch块手动收集异常 android是否有任何这样的全局接口可以捕获应用程序的每个异常信息?我想在一行中跟踪每个异常。如果您同意应用程序在每个异常上崩溃,您可以在当前线程上设置未捕获异常的处理程序,如下所示: Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { @Override public

我想跟踪我的Android项目中所有类型的异常,避免从每个catch块手动收集异常


android是否有任何这样的全局接口可以捕获应用程序的每个异常信息?我想在一行中跟踪每个异常。

如果您同意应用程序在每个异常上崩溃,您可以在当前线程上设置未捕获异常的处理程序,如下所示:

Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        @Override
        public void uncaughtException(Thread thread, Throwable throwable) {
            // your exception handling code here
        }
});
如果在应用程序中使用AsyncTasks或其他线程方法,则必须在每个新线程上执行此操作

此方法通常用于编写您自己的错误报告,可能这并不是您想要做的


如果你不想让你的应用程序崩溃,我认为你必须自己实现一些可以从catch块中轻松调用的东西。

如果你对应用程序在每个异常上崩溃都没问题,你可以在当前线程上为未捕获的异常设置一个处理程序,如下所示:

Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        @Override
        public void uncaughtException(Thread thread, Throwable throwable) {
            // your exception handling code here
        }
});
如果在应用程序中使用AsyncTasks或其他线程方法,则必须在每个新线程上执行此操作

此方法通常用于编写您自己的错误报告,可能这并不是您想要做的


如果你不想让你的应用程序崩溃,我认为你必须自己实现一些可以从catch块中轻松调用的东西。

据我所知不是这样。如果有,我相信没有人会使用try-catch块,这将是一个众所周知的过程/方法。不过,您可以使用android studio进行调试

我能想到的唯一类似的事情是设置一个公共处理程序来捕获异常:

Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
与该注释性内部类相关的方法是:

        public void uncaughtException(Thread thread, Throwable throwable) {
你把例外情况放在哪里。我在tutorialspoint.com上找到了一个示例,并编辑了一个屏幕截图以使其更清晰:

然后,您可以注意到我们在启动线程后故意抛出
runTimeException
。因此,结果将是:

 Thread[Thread-0,5,main] throws exception: java.lang.RuntimeException

据我所知没有。如果有,我相信没有人会使用try-catch块,这将是一个众所周知的过程/方法。不过,您可以使用android studio进行调试

我能想到的唯一类似的事情是设置一个公共处理程序来捕获异常:

Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
与该注释性内部类相关的方法是:

        public void uncaughtException(Thread thread, Throwable throwable) {
你把例外情况放在哪里。我在tutorialspoint.com上找到了一个示例,并编辑了一个屏幕截图以使其更清晰:

然后,您可以注意到我们在启动线程后故意抛出
runTimeException
。因此,结果将是:

 Thread[Thread-0,5,main] throws exception: java.lang.RuntimeException
android是否有这样的全局接口,可以捕获应用程序每个异常的信息,以便我在一行中跟踪每个异常

不,没有

异常要么被选中,要么被取消选中。您必须使用
try catch
throws
捕获已检查的异常,除非代码无法编译

任何未捕获的异常都在异常UCcore所在线程的
unCoughtExceptionHandler
对象中处理

android是否有这样的全局接口,可以捕获应用程序每个异常的信息,以便我在一行中跟踪每个异常

不,没有

异常要么被选中,要么被取消选中。您必须使用
try catch
throws
捕获已检查的异常,除非代码无法编译

任何未捕获的异常都在异常UCcore所在线程的
unCoughtExceptionHandler
对象中处理