如何在任何可能发生的地方捕获异常?

How to catch an exception wherever it may occur?

我通过 this 教程了解了 Firebase 崩溃报告。这是我为使用它而编写的代码:

FirebaseApp.initializeApp(this);

try {
    throw new FileNotFoundException();
} catch (FileNotFoundException ex) {
    FirebaseCrash.logcat(Log.ERROR, TAG, "NPE caught");
    String exception=ex.toString();
    FirebaseCrash.report(ex);
}

在我的 Firebase 控制台中,我可以看到我的错误。一切正常,但我有一个问题。有什么方法可以捕获任何发生的异常吗?

Firebase 崩溃报告将捕获任何未明确捕获并导致您的应用程序崩溃的异常。你不必为此担心。这些在仪表板中被标记为致命异常。您报告的异常被标记为 non-fatal.

作为一般规则,您不应试图抑制所有异常,以防止您的应用程序崩溃。一些异常表示无法恢复的情况或编程错误,您的应用程序进程确实应该消失,以防止事情变得更糟。尝试更改此行为对您的用户来说可能比看到 Android 崩溃对话框更糟糕。