Tablet devices are quite popular these days, and Android tablets are no exception. From the Samsung Galaxy Tab and Motorola XOOM to the various tablets shipping from the likes of Archos, ViewSonic, and many other companies, tablets are flooding the market. This new niche poses challenges for Android developers who create apps for this vast array of devices. In this article, we'll provide a variety of tips and tricks for designing, developing, and publishing Android applications for the tablet market.
Regardless of your device targets, there's no substitute for good application design. The truth is, tablets aren't really a special case for Android developers—these gadgets use the same familiar operating system, SDKs, and platform targets as other devices. However, Android tablet development does exacerbate the existing issues of developing with device compatibility in mind.
You may not be building a tablet application right now, but planning and designing with tablets in mind will greatly simplify the work needed later to support these larger devices. Also, there's no explicit way to prevent users from downloading your application onto tablets—though you can limit Android Market downloads by screen size, using market filters in the Android manifest file. Designing for all device sizes, shapes, and form factors will allow your application to look, behave, and run smoothly across the widest range of devices, regardless of type.
By following these basic principles for any project, tablet or otherwise, you can help to ensure compatibility when you need it:
- Use flexible layout designs and controls, such as RelativeLayout.
- Use dimension values such as dp instead of px, to allow for better scaling and support of multiple screen attributes with less work.
- Make your graphics stretchable by using graphics formats such as Nine-Patch wherever possible.
- Provide alternative resources for various screen sizes and densities.
- Seriously consider a Fragment-based application design from the start, as this new technology is supported in both smartphones and tablets, making for flexible screen workflows.
Following these guidelines will allow your application to be displayed well on a variety of fdevices.