Google To Android Developers: Stop Using Menu Button

    January 26, 2012
    Chris Crum

Google is instructing Android developers to migrate the designs of their apps away from using the menu button, and toward using the action bar. This will become increasingly important as more devices get Ice Cream Sandwich, the company says.

The reason? To “promote a consistent Android user experience”.

Yeah. That will happen. A consistent Android user experience.

Part of Android’s “openness” has allowed manufacturers and develop to create quite the opposite so far. Some take this to even higher levels than others (see Amazon and the Kindle Fire). I’m not so sure that Android being a platform for consistent user experience isn’t a bit of a lost cause at this point.

But I guess this is one of Google’s attempts to at least make it as consistent as possible. Many developers will no doubt follow suit.

“You might worry that it’s too much work to begin using the action bar, because you need to support versions of Android older than Honeycomb,” writes Scott Main on the Android developer blog. “However, it’s quite simple for most apps because you can continue to support the Menu button on pre-Honeycomb devices, but also provide the action bar on newer devices with only a few lines of code changes.”

He adds:

“If I had to put this whole post into one sentence, it’d be: Set targetSdkVersion to 14 and, if you use the options menu, surface a few actions in the action bar with showAsAction="ifRoom".

Developers should also stop thinking about activities using a “menu button” at all, just as apps should stop relying on a hardware menu button, he says. Activities, instead, should provide buttons for important actions directly in the action bar (or elsewhere on the screen), he says, adding that those that can’t fit into the action bar end up in the action overflow.

If any of this affects you, I’d advise you to read Main’s post, as he goes on to talk more about legacy apps, migrating to the action bar and removing the action bar (if you don’t need it).