Ensure apps cannot prevent uncaught exceptions being logged.
Let RuntimeInit use an UncaughtExceptionPreHandler to log an exception rather than relying on UncaughtHandler, which apps can replace. This makes it easier to diagnose application death, especially during app compatibility testing for a new version of Android. Test: Verified manually, with the help of a small sample app (not checked in), that stacktraces for RuntimeExceptions thrown on main or background threads are logged even when the app set a default UncaughtExceptionHandler that swallows the exception with no action. Note that such an inappropriate UncaughtExceptionHandler will still cause threads to die without the app being killed, which it should be. In an exception then happens on the main thread, the app will freeze until the ANR dialog kicks in after a few seconds. I have manually verified that this behavior is unchanged from before this CL. No new integration tests are included because the default system behavior has not changed. Bug: 29624607 Change-Id: Ie87377b0bcadc3ba4083a8ab1bedb8f3dd95a4bd
Loading
Please register or sign in to comment