It’s bright and early—8 a.m.—and you’re at work. It’s pretty rare you’d be in this early: You’re currently work from home and the rest of your team doesn’t usually get in until 10.

You’re smiling though. Today, you finally get to working on a new feature you had worked up the courage to propose to the VP of Engineering. It’s your feature.

You’ll have to put in quite a bit of work on your own before anyone’s ready to jump on board, but at least you’ve got the green light.

Suddenly, you hear a knock brush, fwoosh tock tock tock… and you get a chill down your spine. A Slack notification this early‽

You see the preview, “hey, glad you’re already in today, was wondering…” and think, “Hmm, maybe it won’t be so bad. Maybe Colin from Marketing is just asking if I want to grab lunch and watch the game.” But of course, it isn’t.

The message is from your VP of Engineering, asking “…was wondering why we received these 1-star reviews last night complaining about freezes. Let me know!”

A freeze? A freeze could be literally anything! An OOM, a crash, an ANR, a slow network call, any number of things!

If you don’t finish this before by the end of the day, both you and your project might never see the light of day.

ANRs are a pesky issue for developers, often going underreported by other tooling, including the Google Play Store, where app visibility and ranking is so heavily impacted by ANRs.

But even if an ANR goes uncaptured and unidentified by other tooling because it did not last a minimum interval of 5 seconds, that does not mean that users don’t feel the impact of the slow down. In fact, multiple ANRs could occur, all with short durations, and never go reported by most tooling.

Unlike other tools, Embrace identifies and captures ANRs as soon as the main thread is blocked for 1 second. We provide data on ANR intervals (when the app hangs but eventually recovers) as well as ANR exits (when the user quits the app).

Embrace is your best friend against ANRs

We capture multiple stack traces during the ANR lifecycle so you can understand what code was being executed and how that changed throughout the duration of an ANR. As shown above, these stack traces can be indicators of heavy processing from multiple traces or a simple hanging network call if the stack traces are consistent with one another.

How Embrace helps mobile teams

Embrace is a data driven toolset to help mobile engineers build better experiences. If you’d like to learn more about Embrace, you can check out our website or request a demo.