
Android ANRs: causes, detection and fixes
An ANR means your main thread was blocked for too long. Here are the exact timeouts, the common causes with code, how to read a trace, and how to catch ANRs in production.
Codeskop Journal
Practical tutorials, engineering insights, product lessons and real-world stories to help you build, ship and maintain reliable software.

An ANR means your main thread was blocked for too long. Here are the exact timeouts, the common causes with code, how to read a trace, and how to catch ANRs in production.
Sentry vs Codeskop for mobile teams7 min read
Firebase Crashlytics vs Codeskop: use them together on Android and Flutter9 min read
Flutter error handling: FlutterError.onError vs PlatformDispatcher.onError8 min read
Kotlin Multiplatform crash reporting on iOS and Android9 min read
OkHttp interceptors for network monitoring9 min read
Sentry does far more, including tracing, session replay, profiling and self-hosting. Codeskop is a narrower mobile tool built around crashes, ANRs and failed API calls. Here's an honest comparison with dated pricing.

Keep Crashlytics for free, mature crash reporting. Add Codeskop when you need failed API calls, ANRs on older Android versions, web errors and WhatsApp alerts in one place. Here's the honest comparison.

Flutter routes errors through three channels: the framework, the platform dispatcher and isolates. Here's what each catches, a complete main() setup, and how to report them in production.

Kotlin exceptions on iOS terminate the app with a stack trace that points at Swift, not your Kotlin code. Here's why, how to fix it with @Throws and exception hooks, and the tools that do it for you.

Use an application interceptor to record failures, an EventListener for timings, and keep HttpLoggingInterceptor out of release builds. Here's the code, plus how to ship it safely.

Firebase Crashlytics is the cheapest: it's free. Beyond that, entry plans run from $9 to $80 a month and are limited by events, users or sessions. Here's every price, checked and sourced, with picks by situation.
Stay updated
New guides, product updates and engineering insights, delivered to your inbox.
No spam. Unsubscribe anytime.
Turn insights into action
Put what you read into practice. Codeskop shows you what broke, who it hit and how to fix it, across mobile, web and backend.