Android 捕获未捕获异常的多进程?
我正在开发一个模块,将安装在多个应用程序。我们的一位客户表示担心我们的模块崩溃可能会导致他的应用程序崩溃。我想找到一种方法来捕获我的模块可以抛出的所有未捕获异常。该模块由一个Android 捕获未捕获异常的多进程?,android,multithreading,process,exception-handling,Android,Multithreading,Process,Exception Handling,我正在开发一个模块,将安装在多个应用程序。我们的一位客户表示担心我们的模块崩溃可能会导致他的应用程序崩溃。我想找到一种方法来捕获我的模块可以抛出的所有未捕获异常。该模块由一个服务和2-3个活动组成,它们与主应用程序的通信很少 要捕获少数类抛出的异常,并且只捕获这些类抛出的异常,最好的选择是什么?我曾考虑过使用Thread.UncaughtExceptionHandler,它捕获线程引发的所有异常,并将所有这些类放在一个单独的进程中(使用android:process属性),但我被告知使用多个进程
服务
和2-3个活动
组成,它们与主应用程序的通信很少
要捕获少数类抛出的异常,并且只捕获这些类抛出的异常,最好的选择是什么?我曾考虑过使用
Thread.UncaughtExceptionHandler
,它捕获线程引发的所有异常,并将所有这些类放在一个单独的进程中(使用android:process
属性),但我被告知使用多个进程会影响性能和电池使用。是否可以在一个单独的线程中启动一个服务和多个活动,而不必全部重写它们?您可以从库中实现一个未捕获的异常处理程序。它将处理从库中启动的线程触发的未捕获异常。
不要忘记将其传递给DefaultUncaughtExceptionHandler
。
如果应用程序实现了自己的
UncaughtExceptionHandler
,它也会处理它。您可以从库中实现一个UncaughtExceptionHandler。它将处理从库中启动的线程触发的未捕获异常。
不要忘记将其传递给DefaultUncaughtExceptionHandler
。
如果应用程序实现了自己的
UncaughtExceptionHandler
它也会处理它。你可以在应用程序onCreate()中写入不,我不能,我正在处理一个单独的模块,无法访问该应用程序。此外,当我只需要2或3个组件抛出的异常时,这将捕获所有未捕获的异常。您可以在Application onCreate()中写入。不,我不能,我正在处理一个单独的模块,并且没有访问该应用程序的权限。此外,当我只需要2或3个组件抛出的异常时,这将捕获所有未捕获的异常。