It's also just harder to support because of the sheer fragmentation.
I give my engineers different Android phones as their primary development devices and yet the weird Android issues that keep cropping up are near constant.
I give my engineers different Android phones as their primary development devices and yet the weird Android issues that keep cropping up are near constant.
When it's a "works for me" on one platform but falls over with different hardware, that usually points to some serious issues (e.g. threading, contention, false assumptions) in your code/app.
Not to say that there probably aren't buggy areas in Android itself, however with an appropriate test budget you could determine which are likely hardware (different phones) vs OS (common across devices, with simple repro apps) vs your software (you have bugzorz).