Building Killer Android Tablet Apps: Design and Development Tips
Device manufacturers are ramping up an exciting new line of Android devices: tablets. The success of the Apple iPad has proven that consumers are ready for these devices, which make consuming media content like video and audio a rich and enjoyable experience. But there's a catch: until now, Android developers have made certain assumptions about the target devices their apps run on -- assumptions like "the device is a phone," "the device has a small screen" and "the device includes the Google app experience." These assumptions will not always hold true for tablets and other types of Android-powered devices. In this article, we offer some tips and tricks for ramping up your skills to design and develop killer apps for the Android devices of the future.
Android Supports Tablets?
Yes, and no. You may be aware that Android has been ported to many kinds of devices, including phones, toasters, microwaves and laptops. However, just because Android runs on these devices doesn't mean the user experience is great or the device is officially recognized by the Android community.
So what about the Android tablets that are already in users' hands? Well, the Android operating system is open and free. Manufacturers can put Android on whatever devices they want to, and many have. Archos has been making Android tablets for quite some time. However, these devices run a modified version of the Android OS that has been tuned for the tablet device. Until now, tablets have been something of a gray market, but that's about to change.
Until recently, Google and the Open Handset Alliance have not approved any Android tablets for use with Google proprietary applications such as Gmail, Maps, and most importantly, the Android Market. This will change with the next wave of Android tablets; Google has acknowledged that tablets and other devices will be recognized and incorporated into the Android platform in future versions of the Android SDK and the Android Market. Now, there's a wave of new Android-powered devices slated to hit the shelves late this year and early next year from the likes of Acer, Dell, Samsung, Toshiba, Viewsonic, Archos and more.
Developers are eager to write apps for these exciting new devices and ensure that their existing apps will run smoothly. The question is: how? Google has made a statement to the effect that the current version of Android (2.2, or Froyo) is not designed for tablets. The next version of Android (Gingerbread) is likely to address some of these issues, but developers need not wait to start preparing for the onslaught of Android tablets.
Application Design for Android Tablets
Lazy development assumptions may have worked when there was really only one type of device (a phone), but these bad habits may come back and bite you when your app is deployed on a device like a tablet. Reconsider previous design decisions now and update your applications to make them compliant with the latest configuration options available on the Android platform to help ensure that your application is ready for the future.
The good news is that developing for new Android devices isn't going to be that different from developing for existing ones. Most existing apps will run well enough, provided they've been designed prudently, by which we mean:
- The app properly identifies its application hardware and software requirements using the Android Manifest file tags such as
- The app code checks for hardware, services and optional APIs before attempting to use them.
- The app designers minimized the assumptions about which exact devices or hardware the application would run on.
Just as not all Android devices support Bluetooth or WiFi, there are -- and will continue to be -- new optional APIs for working with specific devices, including tablets. Some of these APIs may be baked into future versions of the Android SDK (like Gingerbread) while others may be third-party add-ons available from manufacturers. These may be similar to such add-ons available for current handsets; the SenseUI is available for some but not all HTC devices, or MotoBlur on some but not all Motorola devices.
User Interface Design for Tablets
When it comes to designing user interfaces for tablets, it's best to stick with flexible layout designs that will scale well to various screen sizes, resolutions and orientations. This way, users will find the experience familiar, regardless of what type of device they use. Here are some tips for designing user interfaces for tablet devices:
- Keep screens streamlined and uncluttered and ensure touch controls such as buttons are of adequate size.
- Use flexible layout controls such as
RelativeLayoutas opposed to pixel-perfect ones such as
- Use flexible dimension values like
- Use alternative resources such as graphic and dimension resources to provide specialized resources for different screen sizes, aspect ratios, pixel densities and touchscreen types.
- Use alternative resources such as layout and graphic resources to provide specialized resources for landscape and portrait modes.