Posts on Reddit Nov 9, 2025

I achieved 0% ANR in my Android app. Spilling beans on how I did it - part 1.

Article Summary

After a year of relentless optimization, one Android dev achieved the impossible: 0% ANR rate in production. Here's how they did it.

The Respawn team documented their journey to eliminate Application Not Responding errors completely. This first part covers 12 foundational fixes that eliminated 80% of their ANRs, with more advanced techniques promised in part two.

Key Takeaways

Critical Insight

These 12 tactical fixes eliminated 80% of ANRs, from ditching SharedPreferences to streaming all file operations and avoiding service binders entirely.

Part two promises to reveal three hidden ANR sources that push into content providers and that colleagues still don't believe exist.

About This Article

Problem

When bitmap and drawable files aren't organized properly, missing drawable-nodpi configurations cause the app to load oversized images. This drains memory and triggers ANRs instead of crashes, so the performance issues stay hidden.

Solution

Set up drawable resources correctly using drawable-nodpi folders. Profile how bitmaps are being used to stop large images from loading on the main thread.

Impact

Better bitmap memory management cut down on mysterious ANRs during long user sessions. The Respawn app reached near-zero ANR rates in production as a result.