In this talk, we'll dive into the ANR (Application Not Responding) detection mechanism of the Sentry Android SDK. We'll compare the existing approaches, such as watchdog and native signal handler, with the new ApplicationExitInfo API available from Android 11 onwards.
We'll explore the challenges faced while building the new implementation, such as enriching ANRs with data from the previous app run, making sure the previous app session is finished properly and parsing ANR thread dumps into backend-friendly formats.