Author: Ed Burnette
Publisher: Pragmatic Bookshelf, 3rd Ed, 2010
Aimed at: Mobile developers interested in Android platform
Pros: Clear and practical overview of Android
Cons: Not for the beginner to programming
Reviewed by: Harry Fairhead
Hello Android is exactly what you need to find out in double quick time what the Android platform is all about from the application development point of view. the latest edition covers everything you need to know up to version 2.2. There is also a write up of how to cope with the ever increasing number of Android versions - many are still stuck with 1.6 and earlier so you can't just assume that everyone is up-to-date.
Of course the bad news is that version 2.3 has just been announced and so the book is already out of date. Don't take this too seriously however as phones using 2.3 are going to be thin on the ground until sometime in 2011 and the book deals with the wider issues of working with Android which haven't changed. The only big change on the horizon is the availability of a drag-and-drop designer which will make creating a UI much easier - however it is only in early beta at the moment.
Clearly the book will have to be revised but it is still valid for a while longer yet.
Notice that it doesn’t cover the more advanced and ambitious task of customising the Android operating system itself, which is a possibility that many think sets Android above all other mobile development systems. To do this you would need special developer hardware and plenty of experience with the Linux operating system in general, making it a much more difficult task than simply developing applications with run under Android which is the subject of this book.
It really is a “Hello World” sort of book that in its nearly 300 pages manages to give you the flavour of what Android can do for you. However, it isn't for the programming beginner. You do need to be reasonably familiar with object oriented programming – preferably in Java but other languages are so similar that it isn’t a huge handicap to only know C#, say – and you need to be familiar with the idea that the IDE will generate code for you. This is not a step-by-step book and you will need to bring some, but not much, intelligence to interpreting its instructions – especially since the Android SDK is changing quite quickly. The ideas are introduced by examples rather than by concepts and this means that you have to stick with following the examples to get the overall principles - and yes it is better to actually work with the examples rather than just read. Occasionally you will probably wish that there was more explanation and an overview of most of the topics would be nice but if you are happy experimenting it will make sense.
The book starts from the very basics and explains exactly what you need to write an Android program and roughly how to install it all. It then moves on to consider the overall programming model used by Android and introduces the important ideas of resources and manifests and the overall lifecycle and structure of an application.
The example is a Sudoku game but really it is just an excuse to put together a simple user interface. From the basics we then have a lightening tour of 2D graphics, playing audio and video and storing local data. In the third section of the book we look at slightly more advanced topics – using the browser, interacting with the GPS and location services, SQL and finally OpenGL. To be honest the idea of using OpenGL 3D graphics on a mobile device is a little hard to believe but it seems to work!
The new sections in this 3rd edition extend the book by approximately 100 pages. Chapter 11 deals with multi-touch, chapter 12 with live wallpaper and home screen widgets, chapter 13 is a very useful look at how to build for and support multiple versions, and the final chapter deals with publishing to the Android market. The Appendix is also handy in that it compares Java and Android Java - no they aren't quite the same thing.
This is a short book so don’t expect it to be a complete reference work. It also doesn’t stray far from the beaten track of the documentation. But it is well presented and there are enough comments and asides to make you think that you are getting something extra.
It’s an ideal book if you want to dip into Android and find out if it is worth taking further and it goes far enough to be the only book you will need if you are up to dealing with the documentation there after.