Android developers know that they need to develop for a wide variety of screen sizes and devices. It's just a part of the Android package, and though some developers may bemoan the fact, it's not that different from developing for PC applications.
Android Central asked a handful of developers how they handled making their apps compatible for a such a diverse group of products. The list of developers included developers of smaller systems and even the developers of the Zappos' app.
Developers framed their responses to the following questions:
- How difficult is it to adhere to the guidelines?
- It looks easy on paper, but are there any special issues you've seen or parts that Google hasn't covered?
- How did this affect development time and costs, if at all?
- Anything further about the subject you'd like to share?
Almost all of the developers answered that making apps accessible to devices of different screen sizes was not a difficult process. By following the guidelines that Google provides, developers should be able to add in the extra options without much trouble if they remember to do so in the planning stages. In general, opinions returned to this idea of adding in functionality and adherence to guidelines by starting the project with these goals in mind.
Effectively Using Libraries and Google Guidelines
Christophe Versieux, developer of BeTrains - SNCB Belguim and co-developer of HoloEverywhere, talked about the way that developers can build on resources already available to the community.
Time and cost, as I said are minimized by following Google guidelines. Fragments and layout folders are really easy to use (and more important to re-use) : a tablet app just grab piece of code from the phone layout and nothing must be rewritten. Small changes in the phone app are immediately reflected in tablet app, as the same Fragment is used.
Development for Major Retailers
While smaller projects can utilize libraries like HoloEverywhere on a regular basis, some major brands are willing to pay for the customized user experiences. Zappos, a leader in online retail and customer service, would certainly be a brand that would choose to invest heavily in creating a consistent experience for its fiercely loyal customer base.
Developer Matthew Runo commented on Zappos' approach:
At Zappos, since we're a retailer, we have to stick first and foremost to our own brand. Wacky, fun, and a little off the wall. That said, both of us are strong believers in the Android design guidelines -- and everything that we do in the UI is taken from the spirit of those rules. A year ago, our app was mostly an iOS port from how it looked and worked. Today, it's (I think) a gem of what you can do in Android. We adhere to the guidelines whenever possible - and our designers work from them as a starting point.
The design guidelines are not a be all and end all - in the end they're just there to try to push along the design of android apps so that they're more consistent. We've found that most of the common "new" open source libraries that we've used have ended up as part of the guidelines (sliding menu, crouton).
The guidelines should never be a hold-back. Certain things -- overall navigation -- need to be consistent so that your app "just works." Everything else -- start at the guidelines and run with your design. We want our app to be OUR APP -- so we can't just do the baseline holo theme.
This year we have basically started from a ground up rewrite of our app to work with fragments. In the past 6 months we've worked hard to add 7" tablet support, and we're currently working on 10" support. The hardest thing to do is testing on devices, but we have a great QA team that helps with that. We have had 2 people working full-time on our app since August or so, before that it was 1 full-time person.
Bottom line is, I think, the android design guidelines help us streamline our process - and thereby reduce costs. Let's face it, most designers from iOS - so having a great resource like design.android.com is a wonderful help to get them kickstarted in the Android ecosystem.
Not everyone interviewed agreed that the process of supporting multiple devices was easy, but those that did find it easier to approach were able to list off some great resources. If you're an interested developer, be sure to check the above links for available libraries as well as checking out Google's developer site.
Source: Android Central