I was watching the
Navigation in Android presentation
from this year's Google I/O conference an I can't help thinking that the back button is still far from what it could be on Android. If it takes almost an hour to explain developers how to handle back it simply cannot be easy enough for users to understand. To me the biggest problem with the back button is its inconsistent behavior without any visual hint of the currently active state of the back button.
Improvements in Jelly Bean
In Jelly Bean Google fixed one of the overloaded states of the back button (which was actually already fixed in Honeycomb but got broken on ICS phones) which is the dismissing of keyboard. On JB once they keyboard is open the back button changes to clear down indicator and there's no room for misunderstanding for users.
See this and other UI changes in JB in
's excellent write up
. (Image by Taylor Ling)
In Android you can easily switch between apps and tasks using the tab switcher, tapping on notifications or triggering intents from other apps. Therefore it is impossible to know what the back button does any given time.
What do you think the back button does in the screenshot on the left? You might get an idea if you read the content of the email but otherwise you can't even guess.
Software Button as Software Button
When I first heard that Google was going to change from physical back buttons to on-screen back buttons I thought that this issue is finally going to get solved. The software button can help users by giving them tips about what is going to happen.
If I share something from the Google Play with my email the back is going to take me back to the Google Play. Why not show that info to the users? Below, you see a very crude draft of how that could look like. Why couldn't the back button show the app it is going to take you?
This would also solve the problem of understanding internal vs. external navigation. When there is no icon users know that the navigation is internal in the app. I would also like to have a special icon for home screen so the users would know that pressing back on the last screen will kill the app and they end up to the home screen.
What do you guys think?