One of those mysteries...
I've been spending the last few days looking at crash reports, and specifically at some of the reports that my engineers can't make any sense of.
Here's one that's especially frustrating.
Attempt to invoke virtual method 'java.lang.Object java.lang.ref.WeakReference.get()' on a null object reference
ResourcesManager.java in android.app.ResourcesManager.applyConfigurationToResourcesLocked at line 441
This came from a Nexus 6 user running 5.1.1, which should make things a bit easier to debug: we have no application code on the stack trace, so having a Nexus report at least lets us see the source code of the crash.
Now, here's the funny thing: ResourcesManager.java only contains 323 lines in 5.1.1, so I can't actually know what's really going on on line 441, because there's no line 441.
The only hint we have is this, all the way at the bottom of the stack trace, below even Zygote: XposedBridge.java in de.robv.android.xposed.XposedBridge.main at line 115
Yup, that's a rooted device running a modded framework, modded deeply enough that the most fundamental aspect of Android can't be trusted, and the mods are causing a crash in one of our apps.
That's the kind of issue that makes me want to flip my desk, even more than OEM bugs.