Android Wireless Application Development Book Review
Industry analysts predict 2010 to be the year of the Android OS. With the success of the Motorola Droid and devices like it on the verge of release, Android will accelerate its adoption curve. Now is the time to learn how to programmatically leverage this modern mobile operating system. Is this the book that can help developers achieve this objective? Read on to find out.
Android Wireless Application Development is the third Android programming book I have reviewed and is also the most comprehensive one I have read to date. While it doesn't cover everything (its discussion of threads was weak, and the use of threads in timers, working with alerts and other such topics were non-existent), the book provides enough solid foundation to construct a practical working knowledge of the platform.
Compared to the other Android books I have reviewed, Android Wireless Application Development does not contain a running tutorial building an Android application from the ground up. Rather, it consists of a series of code snippets illustrating a feature or solving a cookbook-style problem. The book, divided into seven sections, sets the stage with a general overview of the pre-Android mobile marketscape followed by a summary of what makes Android so special. The next section covers Android application design principles such as application lifecycle and resource management. Section 3 and 4 cover UI essentials and common API's, respectively. Section 5 goes into a deeper explanation and examples of Android notifications and services. Section 6 on application deployment discusses the software methodologies best suited for Android development as well as the business cases around market feasibility and leveraging the Android Market as a sales and distribution platform. The final section consists of 4 appendixes detailing the Android emulator, Dalvik Debug Monitor Service (DDMS), Android Debug Bridge (ADB) and a primer on SQLite, Android's data store of choice. A nice convenience is the addition of a CD-ROM containing the book's source code along with several open source Android developer tools. Even though the code can be downloaded from the book's website, the self-contained package adds to the book's overall value.
Due to the rapid pace of Android OS evolution, the book is already somewhat dated by the fact that it only covers up the 1.5 release of the OS. With the release of Google's own Nexus One running version 2.1, a handful of important changes and new features such as the Text To Speech engine, Google Map API enhancements and the like are obviously not covered in the book. Still, there are enough really helpful examples on a number of capabilities that have remained the same since the 1.x release. One of these that I found particularly helpful was a discussion beginning on page 397 regarding the ability to programmatically monitor battery status. Having written several Android apps that regularly poll network resources, I am acutely aware of the power such activity can consume. In an effort to minimize this impact, I modified the battery monitoring code in the book and reworked it into my apps to reduce the frequency of my program's network events when battery capacity is less than 50%. While I could have just as easily Google'd for this code or queried a web site like Stack Overflow, taking the time to read this topic in the book is what ignited my incentive to modify my programs in the first place. It really helped to have the code wrapped in the context of a discussion on battery performance which in turn did a better job putting the topic into context of what the code did and why it was important to consider the impact of performance and battery life. Doing so also added a better degree of stickiness to the solution since I took the time to read, think about, re-read and implement the necessary logic to perform such an operation.
Overall, Android Wireless Application Development is ideally suited for developers already comfortable with Java and application basics of Android OS. For those new to the platform, I would recommend to first start with Ed Burnette's Hello, Android followed by this book for a strong basis to write sophisticated, compelling Android applications.
Title: Android Wireless Application Development
Author: Shane Conder and Lauren Darcey
Price: $44.99 US