Foreword - 50 Android Hacks (2013)

50 Android Hacks (2013)


Android as an ecosystem is expanding rapidly in all directions. Every day manufacturers introduce new devices and form factors, consumers purchase and activate over one million devices, and users download and try new apps. It’s the job of developers (yourself included, hopefully) to fill this ecosystem with beautiful, engaging, and deeply fulfilling applications through which users can better interpret and interact with their world.

As a platform, Android was birthed in late 2003 by former employees of Danger (the company behind the popular Sidekick phones). In 2005 the company driving Android was acquired by Google, and three years later the HTC Dream (G1) was released as the first consumer device running Android. Over the next three years the hardware and platform were heavily iterated, but Android remained solely a phone operating system.

In 2011 Google introduced two new form factors for the Android: tablets and TV. This represented the first official deviation from phones as the device of choice and sparked manufacturer interest in other devices. Android now runs on laptops, wrist-watches, video game consoles, and car stereos. It can only be expected that in the future the number of devices supporting Android will continue to grow.

As application developers, it’s extremely important that you understand the diversity of the platform and the direction in which it’s heading. Creating content on Android is no longer as simple as designing for a phone-sized screen held in portrait orientation. While this does mean more work for the developer creating apps, the end result is a vastly more pleasant experience for the user, regardless of which device your content is consumed on.

In developing applications there are three major things that you’ll need aside from your own creativity and desire to develop: the platform documentation, the open source community, and glue to hold everything together. The platform documentation is easy, since the latest version is always hosted at The open source community is spread across GitHub, Google Code, Stack Overflow, and the like, providing libraries, code snippets, and design patterns for simplifying development. You still need something to tie these disjointed pieces together as one cohesive app. If it were as simple as arranging a few building blocks, everyone would be developing applications. This book is that glue.

Contained in the book are examples of how to solve common problems that arise in Android development. Some are relatively trivial and some quite complex. What they share, however, is being loosely or sparsely documented facets of app development which often cause developers pain. 50 Android Hacks is not meant as a sole resource for learning or mastering Android development, but rather exists to fill in the cracks.

It’s a great task to craft an app that’s dynamic enough to support Android’s growing device diversity. With the knowledge provided by this book, accompanied by that of similar print and online sources, it’s my hope that you’re more empowered to develop and publish apps. Beyond this, while I am a developer just like you, I am also an avid Android user and patiently await that next great application. Perhaps you will be the one to write it.