A guest post by Suzanne Alexandra, a mobile UX design consultant based in the San Francisco area. If you’d like her to help you express the soul of your app, you can reach her through her blog at delightthem.wordpress.com.
If you’ve built any Android apps, you’re probably familiar with that little thing we call a toast. It’s a short, lightweight message that appears briefly, then disappears on its own. Read Let’s Make a Toast in Professional Android 4 Application Development, 3rd Edition for more about toasts in Android. This is a well-known toast example:
Image credit: Romain Guy, Android Developers Blog
Toasts are easy to use. Many designers use them for all types of messages: prompts (such as Enter a name), confirmations (Message deleted), and even error messages. In this post, we will focus on error messages. Toasts are viewed as non-intrusive and easy for the user to handle. They create fewer dialogs and less taps to dismiss. Many designers also say they like the default position where the toast displays, as it tends not to interfere with screen layout.
But is it really the best user experience to use toasts for error messages? You need to consider several factors. First, there’s the length of the message, like in this example:
Could you read this message in the approximately 5 seconds the toast appears on your screen? That is, if the developers have specified the default short display time.
One user told me:
When I was signing in to-app name-for the first time I was really busy unpacking bags in my hotel room and getting ready for–an event-and I missed that Toast message about 5 times. I had to babysit the app to see what the heck was going on.
And of course, you wouldn’t want to display a toast that duplicates a message displayed elsewhere:
This effect is overbearing, like a person who says everything twice. (Hello, hello; how are you, how are you?)
In other words, if your message is long enough, or important enough, and you want to be sure users read it, don’t put it in a toast. How long is too long? Probably about one line of text, as it displays on the device. In the YouTube example above, that’s about 40 characters. However, this number can change according to the device or app theme.
Another issue with toasts is what I call the out-of-context effect. Once the app requests a toast, the toast displays and remains on screen for the time specified when it was created. This means the toast might display after the user leaves the screen or your app, even if the toast has nothing to do with the current context:
Image credit: Cyril Mottier
To a user, your app is a series of contexts. For example, in Gmail, you can check your inbox, read an email, or send an email. All of those are individual contexts, and all information must be correct within this context. Information presented out of context is insanely confusing.
A third reason not to use toasts for important error messages is that users can turn them off. As Mark Murphy says, on Android 4.1 and later, if the user disables notifications (by tapping Settings > App > app name, then unchecking Show notifications), toasts are also disabled.
This Android behavior is marked as an Android bug. But it’s also said to be intentional on the part of the Android team, so that users can turn off unwanted ads. Users can turn off your toasts entirely, and we don’t know if or when that will change in Android.
By now, you are probably realizing that you should never put any important messages that you want your user to see and read in toasts.
So, you ask, where should I put them instead? Ah. A clever question.
The Android Design Guidelines specify dialogs, alerts, and popups, each with their own usage and style. Dialogs are boxes where users enter information or do work. Alerts show messages and ask for confirmation. Popups are like dialogs, but require a single input from the user.
All of these choices are good and useful. If you follow them, you have the satisfaction of knowing that you’re in alignment with Android headquarters.
But what if your client says: No dialogs or alerts. They’re annoying and disruptive to the flow of experience. (For background on modal dialogs, see this article.) What’s your best option then?
Some popular Android apps use inline screen messages. When you can’t display content in a screen due to an error, display a message instead. Preferably an appealing message with an appealing image. Check out these examples from DropBox.
You see? Even error messages can be fun. Who can resist that charming star and kite? The key usability points here are:
- Appealing and meaningful images, maybe even in color
- Simple, clear, and appealing message copy, displayed large enough to be easily read, with plenty of whitespace
- Call-to-action buttons (like Start) where needed
In-screen error messages are a viable alternative to the issue of toasts and modal dialogs. Properly designed, error messages can make your users really want to continue using your app, even when something goes wrong.
An important point here. To craft appealing error messages, and make sure the right type of message is used in the right place, you’ll want to hire a UX designer and possibly a copywriter as well. These skills are an excellent investment toward high app downloads and great ratings in the market.
Safari Books Online has the content you need
Below are some Android UI books with all sorts of tips and information.
|Professional Android 4 Application Development, 3rd Edition walks you through a series of hands-on projects that illustrate the features of the Android SDK. That includes all the new APIs introduced in Android 3 and 4, including building for tablets, using the Action Bar, Wi-Fi Direct, NFC Beam, and more.|
|Android™ User Interface Design: Turning Ideas and Sketches into Beautifully Designed Apps serves both as a tutorial for the entire design and implementation process and as a handy reference you’ll rely on for every Android development project. This book shows you how to create effective designs, organize them into Android components, and move gracefully from idea, to wireframe, to comp, to finished app. You’ll learn how to bring your own voice, personality, and style to your app designs; how to leverage advanced drawing techniques such as PorterDuff compositing; how to test designs on diverse Android devices; and much more.|
|Android UI Fundamentals: Develop and Design walks developers through the different choices available on their way to creating a well-designed application for Android. While building a simple application, the author works through the basics of Android UI development including layout, event handling, menus and notifications. The author then shows the proper way to load and display images, create advanced dialogs and progress indicators, add animation, and how to build custom UI elements. He discusses the proper way of adding interaction through gestures and the advanced graphical options available using Canvas, Renderscript and OpenGL.|