Wednesday, 21 August 2013

Beginning Android 4 Application Development

Author: Wei-Meng Lee
Publisher: Wrox
ISBN: 978-1-118-19954-1
Format: Paperback


Content

So, what does the book actually cover? Well, quite a lot as it so happens. I was particularly impressed that the author covered topics such as geocoding and reverse geocoding, which at the time was somewhat difficult to find good examples of. As well as how to get going with developing for Android 4, the author also covers how to publish your application once it's complete - from digitally signing it to publishing it on the app market, so pretty much all the basics are covered.

The following chapter list will give you an idea of what topics made it into the book with a very brief breakdown of each chapter.

  1. Getting Started With Android Programming
    What Is Android?
    Obtaining The Required Tools
    Creating Your First Android Application
  2. Activities, Fragments and Intents
    Understanding Activities
    Linking Activities Using Intents
    Fragments
  3. Getting To Know The Android User Interface
    Understanding The Components Of A Screen
    Adapting To Display Orientation
    Managing Changes To Screen Orientation
    Utilizing The Action Bar
    Creating The User Interface Programmatically
    Listening For UI Notifications
  4. Designing Your User Interface With Views
    Using Basic Views
    Using Picker Views
    Using List Views To Display Long Lists
    Understanding Specialised Fragments
  5. Displaying Pictures And Menus With Views
    Using Image Views To Display Pictures
    Using Menus With Views
    Some Additional Views
  6. Data Persistence
    Saving And Loading User Preferences
    Persisting Data To Files
    Creating And Using Databases
  7. Content Providers
    Sharing Data In Android
    Using Content Providers
    Creating Your Own Content Providers
    Using The Content Provider
  8. Messaging
    SMS Messaging
    Sending E-mail
  9. Location-Based Services
    Displaying Maps
    Getting Location Data
    Monitoring A Location
    Project - Building A Location Tracer
  10. Networking
    Consuming Web Services Using HTTP
    Consuming JSON Services
    Sockets Programming
  11. Developing Android Services
    Creating Your Own Services
    Establishing Communication Between A Service And An Activity
    Binding Activities To Services
    Understanding Threading
  12. Publishing Android Applications
    Preparing for Publishing
    Deploying APK Files
  • Appendix A: Using Eclipse For Android Development
    Getting Around in Eclipse
    Debugging Your Application
  • Appendix B: Using the Android Emulator
    Uses Of The Android Emulator
    Creating Snapshots
    SD Card Emulation
    Emulating Devices With Different Screen Sizes
    Emulating Physical Capabilities
    Sending SMS Messages To The Emulator
    Making Phone Calls
    Transferring Files Into And Out Of The Emulator
    Resetting The Emulator 
  • Appendix C: Answers To Exercises

General Impressions

I initially found this book whilst browsing through my local bookshop here in Dublin on a rare day off from work. The book was one of the first that I had found that dealt with the then new Android 4 SDK and initial glance seemed to be different enough, and helpful enough, to warrant a purchase.

I was pleasantly surprised once I got home to find out that I was correct. The book delves into the usual pleasantries such as getting started with Android development before dealing with the juicier stuff. As it's an older book (by comparison) at this point, don't expect there to be any reference to the newer Android Studio (which admittedly is still considered to be 'Early Access' - but I'd bet money that Google will eventually drop Eclipse support once this product is well established and has useful things like all the necessary menus built) but there's a nice summary of how to set up the SDK, Eclipse and ADT to get the most unfamiliar of you up and running with Android development.

Once these pleasantries are out of the way the book dives into the basics of Android, starting with the ubiquitous Activity. Straight away the style of this book becomes evident, the author tells you "Here's what we're going to do", gives the code for it and then sums everything up in a nice post-mortem after the code has been presented. As each example and subsequent post-mortem progresses, the author builds upon each previous notion in a way that minimises repetition while maximizing learning and experience. As with any good book, at the end of each chapter you'll find a summary of what was covered in the chapter and what you ought to have learned.

So, all-in-all, pretty good right? Well, yes and no. The author does a pretty good job of covering the basics and for an amateur programmer or someone completely new to Android programming, it will probably be enough. I personally found myself wanting a little bit more in places, such as the section for sending / receiving SMS messages. Yes, he does cover these topics in Chapter 8 (Messaging) but there is no reference on how to interact with messages already on the device. I suspect this is not so much an oversight as the fact that Android provides no formal API for dealing with SMS/MMS messages that are stored already, and getting into how to do this involves a complexity a little too high for the average newcomer but it just seemed to be a cop out not to address it at all.

That gripe aside, this book does generally do an awesome job at what it set out to do - teach you how to get going with Android 4 Application Development.

Conclusion

As Android development books go this is a great place to start. You're helped to get up and running (only with Eclipse, this was written pre-Android studio) and gently introduced to the various core aspects of Android and what it means to program for it. Building upon what you've learned in each chapter, you'll be impressed with what you can do by the end of it. It doesn't answer all of the questions you'll have though and, while I suspect newcomers to programming for Android will find it to be a good reference for a while, you'll also find yourself more and more often looking for that little bit more. A reference book this it not though but, fear not, there are plenty of good references out there for you.

Rating

With the caveats of this book NOT being for professionals AND being a little dated now, I'd rate it 4.5/5 - you'll find it to be a great starting place and a natural stepping stone to bigger and bolder Android concepts and techniques.

Thanks for reading!

Andy

Next review will be the Android Programming Book: Android Developer Tools Essentials

No comments:

Post a Comment