如何在1个位置记录生成构建中的崩溃报告

时间:2017-03-27 08:07:09

标签: android android-layout logcat crash-reports android-logcat

我发现了这个answer,它帮助我理解了这个场景。但是,如果我的应用程序中有100个活动,并且崩溃可能发生在任何一个中,那么我是否有可能从一个地方记录所有崩溃,而不是在每个活动中编写此代码。

我希望在应用程序发生崩溃时将stacktrace保存在某个文件中,并且我希望全局执行此操作,而不是进入每个活动。

 @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);

 // Sets the default uncaught exception handler. This handler is invoked
 // in case any Thread dies due to an unhandled exception.
 Thread.setDefaultUncaughtExceptionHandler(new CustomizedExceptionHandler(
 "/mnt/sdcard/"))

1 个答案:

答案 0 :(得分:1)

您可以在Application类中执行此操作。

    public class MyDemoApplication extends Application {

        @Override
        public void onCreate() {
            super.onCreate();
            if (!BuildConfig.DEBUG) {
                Thread.setDefaultUncaughtExceptionHandler( <YOUR_CUSTOM_EXCEPTION_HANDLER> );
            }

        }
    }