Why are people so excited about Android development?
In today’s Kinvey eBook, titled “How to Make an App: Android Edition,” our guest author writes: “We are living in the Post-PC era.” That sentence — in quotes — comes up over 14,000 times in a Google search. So what are so many people writing about? They are writing about a time when many computing tasks — such as staying in touch with friends, doing online research, shopping, and playing games — no longer require a laptop or desktop computer. Not only can these activities now be done “on the go” with a smartphone or tablet, but they can also be done in new ways that enrich the experience.
Android devices are a great example. Many are location-aware; many have accelerometers that know when the phone is moving, in which direction and how fast; and many include NFC (Near Field Communications), a technology that enables easy communications (such as by tapping) between two devices or between a device and a passive tag. NFC is useful for actions like automated store checkout, inventory counting, contact information exchange, and offering special deals to customers in a specific store aisle.
Android also offers features not found on other mobile platforms like iOS or Windows Phone that make development easier. Two good examples are the AccountManager system and the AccountAuthenticatorActivity base class, both of which streamline the process of setting up custom accounts — such as to register and authenticate user IDs and passwords. Android also offers market-leading capabilities for letting applications on the same device invoke each other’s services. That way a developer is spared the work of implementing and replicating an already-existing service.
Besides its technical advantages, Android also offers developers major business opportunities. According to Google, there were over 700,000 apps available on Google Play in October 2012 and there were over 25 billion downloads in September 2012. According to IDC, as of Q3 2012 Android accounted for 75% of all smartphone shipments — in a market that did not exist until 2008. Two recent developments in particular have sparked this growth: the Android ecosystem and the Cloud. The ecosystem consists of resources like Android Development Tools (to be discussed later) and distribution platforms (like Google Play) that accelerate app development and marketing. These platforms remove the “friction” involved in distributing and selling traditional PC application. There’s no physical packaging, no inventory stocking, and much less waiting for developers to get paid. You simply register online, pay a nominal fee, upload the app and you’re in business.
“The Cloud” is a general term meaning a service that users and applications share via the Internet. A cloud may be “private” — i.e., the services belong to an organization for the benefit of its employees and business partners. Or a cloud may be “public” — i.e., a company (such as Amazon or Kinvey) owns the services, which it offers commercially to the public, including app developers. In the Android space, Cloud services typically function as an app’s “backend.” They may do computational tasks considered too “heavy” for a phone. They might also store, secure and share data among multiple users on different phones. A good example is a game app where users need to access the current state of play.
If you are a developer and want to build your own backend, you certainly can do that. Whether you want to or not probably depends on whether your backend will set your app apart in the eyes of your potential customer. If it’s a service that’s fairly typical across lots of apps — like user authentication or a shopping cart — then the answer is probably “no.” You may be better off hooking into a commercial backend provider via an API. Then you can focus on what counts most — a unique user experience and application-specific functionality.
Learn more about how to make an Android app in our latest eBook, available here.