Android UX Decisions

thedesolatesoul

Expert
Licensed User
Longtime User
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 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.
 

Erel

B4X founder
Staff member
Licensed User
Longtime User
I mostly agree with your points.

I've switched to an iPhone several weeks ago as my personal phone. While the iPhone is a very nice phone I think that the Android interface is in many cases better. It is true that like all of us we are not regular users so our personal experience doesn't really represent most users.

Several design weaknesses that I see in iOS (7) are:
- Lack of notifications icons and the whole notification center. In many cases I miss messages because of that.
- Lack of a back button. Really annoying in some cases. For example when one app opens the browser and then you cannot go back without opening the "task manager".
- Limited support for background processes.

I actually like the long press gesture. I find it similar to Windows right click menu. Though I agree that most users will never find it...
 

corwin42

Expert
Licensed User
Longtime User
The menu button: I totally agree with you. Thats why Google removed it from their Nexus devices since years.

The Long press gesture: Bad thing here is that Google changed the meaning of a long press. So there are apps they use it as a context menu and others use the new guideline and start a multi selection.

The overflow menu: I think the overflow button is a much better alternative for the menu button. Problem with the overflow button is that it is in the upper right corner. On large devices this place is hard to reach. Therefore I think that the NavigationDrawer is best for navigational menus and everything that you need only very rarely in your app should be moved to the overflow menu.

I found somewhere in the design guidelines that settings and about/help menu items should go into the overflow and not the navigation drawer. I disagreed here with Google and they reverted this as in their own apps this is now in the navigation drawer.

The contextual Actionbar: I disagree here. If the contextual Actionbar is shown the user has to do this action (its some form of a modal dialog). Whats bad with the contextual Actionbar is that there is no positive or negative dismiss.

The Sliding Navigation Drawer: In my opinion this is the most useful design pattern of all. If I see the "hamburger icon" I know that there is a navigation drawer and I just have to swipe from the left to open the man navigation menu of the app.

The problem is that every developer created his own crappy implementation. All developers should use the Google implementation (AHNavigationDrawer for B4A) with the standard hamburger icon and all is fine.

I hate Google for removing it from the G+ app. The current solution with the (not always visible) navigation somewhere under the (non standard) Actionbar is totally crap. I can't count how often I swiped from the left edge in the new G+ app and nothing happend.

Pull-to-refresh: It depends. In the G+ app a button/toast appears if new content is available. So PTR is not the only option to refresh. I experimented with PTR in my weather app and decided not to use it because you do a manual refresh only at very rare situations and then a button in the ActionBar or a menu in the overflow is just better.

I like the PTR in Robird (my favorite twitter app) very much. But there is a possibility to get to the top of the list with just one button press.

Toasts and actionable toasts: I agree. This is a bit confusing.

Overall I think Google learned very much. They started the design guidelines much too late. Apple had design guidelines just from the beginning. Google started them with Android 4. Another thing is the approval in the AppStore. I think if you try to publish an iPhone app that does not use the guidelines it will be rejected. In the PlayStore you can publish whatever crap you want.

I don't know much about iPhones so I can't compare them to Android very good. I think iOS is getting better and better (iOS8 with the Intent like extensions). The advantage of Android is that if you miss a feature there is a way to add this feature to the system somehow. This is not possible on iOS the most times. I use some apps (SwipePad for example) that won't be possible in iOS15 I think. :)
 

thedesolatesoul

Expert
Licensed User
Longtime User
I cant remember the times google shifted menu items from the overflow menu and navigation drawer. It just confuses more and more developers. I dont see a reason to waste screen space with both.

I am on the edge with contextual Actionbar. The problem is all the implementations I have seen, really suck. There is a small check mark in one corner, which the user usually does not notice and then does not know how to proceed. I still get confused in different apps. Even with the simplest implementation of Done/Cancel it feels weird to me to put the Done/Cancel buttons on the top rather than at the bottom of the screen. Usually we read the screen from top to bottom, and expect the bottom to have the actionable objects. Maybe that is just my own personal preference.

I also hate the new G+ app, the old one was perfect with the drawer. But the drawer itself I dont think the hamburger icon is enough.

I agree that Google learned a lot, but the fact they keep changing the guidelines atleast once a year other developers cannot or do not keep up, they try to mimic the behaviour in non-standard way. The way I usually measure the success of the UX is to hand the app to my mom or a similar person to see where they get stuck, and how they get confused between different apps.
 

HotShoe

Well-Known Member
Licensed User
Longtime User
I think the overall largest problem with IOS and Android apps is the same; lack of documentation. Programmers don't like to write docs, and it's hard to include them in an app whether it's for an operating system or a shopping app. I include a help menu item in all of my complex apps that includes a complete manual. Maybe I should write an app that documents how to use Android on a device and what everything does!

--- Jem
 
Top