The main issue with the back button is that devs love to mess around with how it works by default, usually to satisfy some kind of architecture that doesn't make sense in the first place on an Android device. From what I've seen of people's Android code, a lot of folks don't grok the Activity and Fragments APIs at first and end up making huge mistakes or creating excessive architectures to try and 'solve' the problem. Unfortunately, this is a kind of chicken and egg problem, since a lot of Android apps are done by hobbyists who need time and practice to get up to speed or by commercial companies that don't care for or don't have any idea on how their product should work on Android.