Many people dont realize the true important of UX decisions but Apple and Google really do and they have done a lot of work on behalf of the developers by defining many design patterns.
The whole idea is to get the user interface simple enough that the user requires no instruction to navigate it.
I know Apple gets a lot of flack in these forums, but after observing Android for the last couple of years, I can say that Apple atleast got the basic UX design correct, while Google is still constantly experimenting (and getting it wrong).
These are the things I think Google got wrong:
The whole idea is to get the user interface simple enough that the user requires no instruction to navigate it.
I know Apple gets a lot of flack in these forums, but after observing Android for the last couple of years, I can say that Apple atleast got the basic UX design correct, while Google is still constantly experimenting (and getting it wrong).
These are the things I think Google got wrong:
- The menu button: This means some settings are hidden from the user until he realizes to press this button, and to add to the confusion this will bring up a different menu in each screen. Sometimes it is very hard to find actions/settings burried into a deep activity.
- The overflow button: Just isnt pretty and feels out of place. But is an ok alternative for the menu button because it has affordance. But the 3 vertical dots have no meaning
- The Long press gesture: The worst of the lot, it is impossible for the user to know if there are more actions for an item until he experiments to long press. The alternate is to have a small overflow button visible in the corner.
- The contextual Actionbar: The static action bar on its own is a good standard design paradigm. However, the fact that selecting an item for instance, will change the top action bar is not good. The user can lose sense of where he is, and it is disorienting. I believe using another actionbar at the bottom is a better solution.
- The Sliding Navigation Drawer: This is one of the most inconsistent patterns (even in google apps) in both implementation and usage. In some apps it slides 'over' the activity, in other apps it slides the 'activity/fragment' away. The main problem with this pattern again is affordance. The user will never know it exists. You can argue the hamburger icon gives it away, but to be honest the hamburger icon itself is so vague and inconsistent across apps that we cannot consider it a standard pattern. Also, most general users have no idea what a hamburger icon is or what it means.
- Pull-to-refresh: I believe the pull-down-to-refresh is a really bad design pattern. As usually you start from the top of a list, once you reach the bottom, just to refresh you have to scroll all the way back up. Pull-up-to-refresh is a much better pattern. This is a direct criticism of the Google+ app, although it is not part of the Android design guidelines.
- Toasts and actionable toasts: I dont like toast messages simply because you may potentially be inside another app/activity that is not relevant, when you receive a toasts message. Secondly, for actionable toasts, they create a sense of urgency (for instance, clicking on undo) because the message will disappear. There should be a more permanent way to perform the action rather than on a toast.