Profile cover photo
Profile photo
Android Anti-Patterns
Popular apps that don't follow Android design conventions.
Popular apps that don't follow Android design conventions.


Post has attachment
A nice roundup of some of the common Android anti-patterns by +JR Raphael.
Add a comment...

Post has attachment

One of the worst things a company can do is to lose sight of the core competency of it's product. Version 5 of +PayPal for #Android  is a great example of this. It perfectly articulates why design should always accommodate the most-common use case, not the one the company most desires.

Things are immediately off to a bad start when you launch the app and are greeted with a splash screen. (1) A ubiquitous unwritten #AndroidDesign  principle is, "Don't make me wait". PayPal shows the splash screen while it logs in and attempts to acquire the device location, so that it's able to present shops nearby. This is egregious on two levels:

First, the main functions of PayPal are to transfer money to other people and act as a middleman for online transactions. My location isn't needed for either of those tasks. PayPal would like brick-and-mortar shopping to become part of it's business, so they made it the first thing you see. (3) I have no interest in using PayPal this way, but I must now wait for my location to be determined every time I open the app.

Second, even if the (overzealous) product designers insisted on "Shop" being the landing page, there is simply no reason to prevent the user from accessing other parts of the app while the location is being fetched. What's worse, after waiting upwards of 10 seconds for the splash screen to go away, the list of shops is not even populated. The screen is empty and there is another spinner! (2)

PayPal also completely disregards the established patterns for the Navigation Drawer. Not only is the Action Bar moved with the sliding content (4), but the Drawer is opened by a back button press. These types of things may seem minor, but they throw off flow and confuse user's expectations.

As if hijacking the back button's natural behavior wasn't bad enough, PayPal then shows a "are you sure you want to exit" dialog when trying to back out (from the Drawer). (5)

A small annoyance: When you send someone money from the app, it now shows a ridiculous "Sent using the PayPal Mobile application". There is no way to disable this.

Perhaps the worst offense: PayPal is locked to portrait orientation. Come on people, this is getting old. It's pure laziness.

It used to be fast and easy to get in-and-out of PayPal. Doing things like making transfers and checking balance were immediately available. After-all, that is it's primary purpose. It's too bad that it seems the company is more focused on what it wants, instead of what users want.

There are many parts of the redesign that are nice, where Android patterns are used appropriately. Unfortunately, these aspects of the app are overshadowed by it's fundamental issues.

By +Paul Burke
PayPal v5
1 Photo - View album
Add a comment...

Post has attachment

For an app that is all about #AndroidDesign+Themer ignores or breaks many of the official design patterns. They call this release "beta," so hopefully these issues will be fixed soon. Here are a few notables:

1. Lack of touch feedback everywhere
Most tappable screen elements do not respond to interaction (e.g., Action Bar buttons, list items, grid items, bottom-bar buttons).

2. Incorrect Drawer pattern and indicator usage
Drawers shouldn't hide the Action Bar and should be available in all screens via edge swipe. "Up" affordance should only be used next to the app icon when in lower-level screens.

3. Fake Action Bar
Horizontally centered titles, off-centered vertical alignment, lack of long-press response on Action Buttons, oh my! I still don't understand why developers use fake Action Bars in these situations. (::cough:: Google+)

4. Specific device resolutions and orientations
Themer only supports 8 device resolution profiles and doesn't support landscape orientation. The Nexus 4 resolution (1280 x 768) isn't even listed! This is a clear sign that things are not being done correctly.

5. Broken sharing
It appears to allow you to share different parts of the app, but no matter where you hit "Share", it shows the same "sign up for Themer" message (i.e., there is no way to share a specific theme, even if you hit share from the theme's details page). They're also using the wrong API, which allows users to select "Always" as the share action (makes no sense).

6. Pull to refresh
Uses pull-to-refresh pattern without any alternative way to refresh, nor any indication that the pattern is used. Zero discoverability.

7. Requires login
It requires you to log in with Google or Facebook to do anything. You can't "apply" a theme, or even "favorite" one without logging in. Still worse, there is no way to sign up without a Google or Facebook account.

Being such a high profile app that is centered around design, I truly hope that MyColorScreen starts setting a better example.

By +Paul Burke 
4 Photos - View album
Add a comment...

Post has attachment
Selective Orientation

It's been a while since we've posted here, and though  #AndroidDesign  has come a long way it the past year, the anti-patterns have not disappeared.

Orientation locking has always been one of the most prevalent Android anti-patterns. The only thing worse that locking an entire app to one orientation is only allowing select screens to be rotated. There are still many phones that have landscape hardware keyboards, and even some blackberry-style devices that are naturally landscape. Using locked apps on these types of phones are embarrassing, and provides great motivation to leave 1 star reviews.

Digg recently released their Android app, and this "selective orientation" issue taints an, otherwise, well-done and Android-appropriate app. This is compounded by the fact that the article screen doesn't maintain scroll position when changing orientation. That's pretty unacceptable for a "reader" app.

These issues are extremely easy to fix (if the app is built properly). Hoping to see Digg get to it sooner than later!

By +Paul Burke 
3 Photos - View album
Add a comment...

Post has attachment
Have you seen the first episode of +Reto Meier's show, devoted to abolishing Android anti-patterns, "Table Flip"? This week: Exit Buttons.

Add a comment...

Post has shared content
If your Android app shows a compatibility menu button on Android 4.0 or above... #androiddev

(Paid for by the android:targetSdkVersion="14" or newer foundation.)
Add a comment...

Post has attachment
This post is by +Juhani Lehtimäki 

It is time to publicly shame an app. There are two reason why I'm writing this. Firstly, this app is from a large publishing company that should understand the importance of presentation. Secondly, this app is featured on Google Play. In fact it has been featured on the Play Store already over a month! If apps like these keep getting featured what hope is there for any improvement in general quality of the app selection? Developers who work hard to create great apps that follow the guidelines are discouraged by allowing apps like this to be featured on the store. This situation needs to change!

The app is Spiegel Online:

I also used this app as a bad example when I talked about tabs in my blog some time ago:

I think this app does everything wrong that is possible to do wrong. See the attached images for details.
7 Photos - View album
Add a comment...

Changed our name to Android Anti-Patterns, since our discussions often go beyond user interfaces.

That is all.
Add a comment...

Post has attachment
This is an anti-pattern that seems to be becoming more widely used lately. This is also something that is very simple to avoid.

I'm using an app called NVision as an example here (which is otherwise a pretty nice app). This app shows notifications for new stories by default (which I think is the wrong default but that's not the point of this post). The problem is that when I tap the notification I'm taken to a screen saying "loading content". This should not happen! If your app notifies that there's a new content that content should be instantly accessible by tapping the notification without any loading screens or splash screens. 

Bottom line: don't show a notification about new content until that content is finished loading so you can show it to the user without any delay.

Post by +Juhani Lehtimäki 
2 Photos - View album
Add a comment...

Post has shared content
Just wrote the 1st Android UI/UX Tips for my blog which aimed to share my opinion on some not-so-great UI/UX examples and their possible improvements.

In this issue, I've looked into some examples that used confusing/inappropriate colors, as well as unnecessary (and ugly) navigation.

Feel free to comment on them if you have anything in mind. I will write more if I have any in the coming future.

#Android #AndroidDesign #AndroidDev #UI #UX   
Add a comment...
Wait while more posts are being loaded