Pluralsightintermediateen

Droidcon Boston '19: Everything You Ever Wanted to Know About Error Handling on Android

Build an Android crash reporting SDK! Learn to capture stack traces & send them to your server using UncaughtExceptionHandler. Improve app stability.

50m
Certificate
Droidcon Boston
Droidcon BostonInstructor

Course Content

Droidcon Boston '19: Everything You Ever Wanted to Know About Error Handling on Android is an intermediate-level Pluralsight course taught by Droidcon Boston. It runs 50m, is taught in English, and includes a certificate of completion. It is a paid course, first published April 2021.

Build Your Own Android Crash Reporting SDK

Ever wondered how crash reporting tools actually work? This session dives deep into the inner workings of Android crash reporters, showing you how to build a robust crash reporting SDK from the ground up. We'll start with Android's UncaughtExceptionHandler, capturing and sending stack traces to an HTTP endpoint.

You'll progressively enhance your crash reporter, transforming it into a battle-tested SDK designed to significantly reduce debugging time in production. We'll explore the challenges inherent in building such a system and discuss effective solutions, considering tradeoffs and best practices.

Key topics include:

  • Low-Memory Environments: Strategies for handling OutOfMemoryErrors using streaming IO and efficient JSON serialization.
  • Offline Reporting: Implementing caching undelivered reports on disk and triggering automatic upload upon network connectivity restoration.
  • Privacy Considerations: Collecting valuable device metadata while adhering to user privacy by filtering sensitive information.
  • Exception Handling: Capturing exceptions within try-catch blocks and addressing thread-safety concerns.
  • Testing Strategies: Effective methods for testing crash reporters, including the benefits of black-box end-to-end tests.
  • Stack Trace Deobfuscation: Techniques for deobfuscating stack traces in apps utilizing R8, including uploading and parsing mapping files.
  • Stack Trace Analysis: Highlighting key information within stack traces and grouping related errors for easier analysis.
  • API Level Compatibility: Addressing the impact of different API levels on data collection.
  • NDK App Support: Capturing errors in NDK apps and navigating the complexities of the Java Native Interface (JNI).

Learn to create a powerful crash reporting solution tailored to your application's needs and gain a deeper understanding of how to proactively identify and resolve issues before they impact your users. This session provides practical knowledge for improving app stability and enhancing the debugging process.

$ whoami — the devs behind tutorialsearch.io

Need a web app built? Hire the team behind TutorialSearch.io

We ship fast, production-grade full-stack apps (Next.js, React, edge infra) — the same stack that powers this site.