Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Android Development Patterns: Best Practices for Professional Developers
“A must read for all developers that want to begin serious Android development.”
—Justin Anderson, Freelance Android Developer
“From start to finish, this book contains a variety of great tips and insight into the most important attributes of Android design. This book will definitely be required reading for any of our future Android engineers.”
—Cameron Banga, Cofounder, 9magnets, LLC
There’s a downside to Android’s amazing openness and versatility: it’s easy for developers to write code that’s inefficient, unreliable, insecure, or hard to maintain. In Android Development Patterns, enterprise Android developer Phil Dutson helps you leverage Android 5.0+’s amazing power without falling victim to those pitfalls. Dutson presents today’s most comprehensive set of patterns and procedures for building optimized, robust apps with Android 5.0+.
First, Dutson guides you through establishing a highly efficient development environment and workflow, and testing your app to ensure that your code works just as you expect. Then, he walks through the modern best practices for structuring apps, using widgets and components, and working with views.
You learn how to build apps that are easy to manage and update, deliver accurate and up-to-date information without wasting precious battery power, and take advantage of new hardware, such as Android Wear and Android TV. Dutson concludes by presenting powerful strategies for optimizing your apps and packaging them for distribution.
Coverage includes
-
Using testing to build more trustworthy, dependable, maintainable apps
-
Understanding subtle but critical differences between Android and traditional Java programming
-
Building consistent, modern user interfaces with views and layouts
-
Leveraging the proven MVC pattern to cleanly organize logic
-
Creating rich visual experiences with 3D graphics, animation, and media
-
Simplifying capture and use of location data with the new Locations API
-
Integrating optional hardware, such as Bluetooth, NFC, or USB
-
Building better apps with Google Play Services
-
Creating Android Wear notifications and apps
-
Tuning and improving apps with Google Analytics
-
Designing Android TV apps for the “ten foot view”
informit.com/aw https://github.com/dutsonpa/adp-files
- ISBN-100133923681
- ISBN-13978-0133923681
- PublisherAddison-Wesley Professional
- Publication dateFebruary 24, 2016
- LanguageEnglish
- Dimensions7 x 1 x 9 inches
- Print length294 pages
Editorial Reviews
About the Author
Phil Dutson is a Solution Architect over client-side and mobile implementation for one of the world’s largest e-commerce retailers in fitness equipment. He has been collecting and developing for mobile devices since he got his hands on a US Robotics Pilot 5000. He is the author of Sams Teach Yourself jQuery Mobile in 24 Hours (Sams, July 2012), jQuery, jQuery UI, and jQuery Mobile: Recipes and Examples (Pearson, November 2012), Android Developer’s Cookbook, Second Edition (Pearson, July 2013), and Responsive Mobile Design (Addison-Wesley Professional, September 2014).
Product details
- Publisher : Addison-Wesley Professional (February 24, 2016)
- Language : English
- Paperback : 294 pages
- ISBN-10 : 0133923681
- ISBN-13 : 978-0133923681
- Item Weight : 1.1 pounds
- Dimensions : 7 x 1 x 9 inches
- Customer Reviews:
About the author

Phillip Dutson started down the path of geekdom at an early age when his father brought home a broken 8086 computer and helped him fix it up. Several years later he helped destroy and return to life a monochrome-display 386 "laptop". His education continued when he was given his first Palm Pilot 5000 and used it until the screen wore out. Having fallen absolutely head-over-heels in love with mobile devices he eventually traded up to a Palm Vx, a Cassiopeia, and then several rounds of smart-phones. He currently keeps a nice menagerie of both iOS and Android devices. With years of practical and personal experience, he has decided to share his knowledge to help everyone discover what they have been missing on the mobile front. He is also a lead eCommerce and Front End Developer for one of the world's largest fitness manufacturers, and enjoys developing and creating all things related to the web.
Customer reviews
- 5 star4 star3 star2 star1 star5 star0%23%0%0%77%0%
- 5 star4 star3 star2 star1 star4 star0%23%0%0%77%23%
- 5 star4 star3 star2 star1 star3 star0%23%0%0%77%0%
- 5 star4 star3 star2 star1 star2 star0%23%0%0%77%0%
- 5 star4 star3 star2 star1 star1 star0%23%0%0%77%77%
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on Amazon-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
This is a book looking for a purpose and target audience and fails miserable at both. I don’t like being so critical about a book since regardless whether I like it or not the author has put in many hours and he is after all a fellow human being with feelings and emotions. But I claim this is not the authors fault, he has probably done what he thought of as a good job. It is the editor-in-charge that is to blame. He/she should have killed this book long before its completion or just hired another competent author.
It is so disappointing seeing a large publishing house like AW/Pearson being swept away in the flood of poor Android books which never should have been published. This book severely lacks an executive editor which should have pulled the plug on the book project early on.
I’m tired of seeing pointless Android books rehashing the developer docs without adding any new real information or insights and just having some pointless filler chapters to make the minimum number of pages.
Now to the specifics to motivate my claims.
This book appears to give patterns for the professional developer so it is safe to say from this that the target audience are people with experience that are looking for other points of views and possible pick up a gem or two or to find examples of best practices in a fast evolving Android world.
I already make a living from bespoke Android programming but I’m not that arrogant that I don’t think I can learn more and there are also areas of the Android system I have hardly ever touched. So with this background I expected to read some interesting discussions on what pattern to apply as one professional to another and see how other experienced developers tackles standard architectural issues or tip on 3:rd party libraries to ease once work.
My suspicion started already in chapter one and two which claims to go through the development environment. In chapter one I laughed the first time. In a section named “Version control” the author states that it is important to use VC (dooh…) and then presents SVN, Git and Mercurial as examples. Here one had hoped to see some information about pros/cons and some analysis. But SVN is around four short paragraphs with a summary that states that you can do branches, versioning (!!), tagging and merge tracking. In one word each.
Git gets three paragraphs, with an equal useful(!) summary. The chapter concludes with two paragraphs on Mercurial.
These are just good examples of the pointlessness of this book. Anyone not familiar with VC is not the target audience of this book and if the reader is not then these chapters doesn’t help even the length of a Higgs Boson too choose a VC nor does it give any useful information at all. For example, why were these particular three chosen (and really, would it be a good professional advice for a new project to be setup with Mercurial?)
The rest of the chapters give no more information here than what you can read on the intro page in d.android.com. Not a single mention about using the (for example) “gradlew” when he discusses that you can use the command line nor any mention about useful “adb shell” commands. When I give in-house Android courses I actually force developers in the course to only use the command line tools the first two days to become familiar. In my experience this is always needed sooner or later and also takes away the “black magic” behind the scene in Android Studio.
In the next chapter named “Testing and debugging” I laughed the second time. All the chapter says is that developers do unit testing on there own modules before the team starts integration tests. There is no useful information about for example how to actually set up a unit test environment with AS or how to use Junit. There are some “random” code which is of absolutely no use. Too little for anyone not familiar with the topic and trivial for anyone remotely familiar. There is some information in regards to integration testing but again, the tools referred to has better online help in d.android.com. Some information about “Monkey” but no solid information. Not even a single mention of Robotium for example.
The Android activity lifecycle is much more complex and has more gotchas than what most beginner/intermediate books gives the impression of (or perhaps many authors are even aware of). However, the developer docs have come a long way and I actually like the latest reincarnation of the visual illustration of the lifecycle. But the author of this book apparently disagrees with me. He has his own, and in my view, bad visual illustration of the lifecycle without clearly indicating the different states but just state transitions. Why not just re-use a well known illustration and just give credit to the dev-docs instead of trying to create a poor version himself?
One important skill as a professional developer with project deadlines in terms of patterns is what 3:rd party libraries to use. While everyone has their own pet-libraries there are a few that are commonly used. For example, Buttercup which together with some suitable AS plugins takes away some of tedious and error-prone boiler-plate code we all have to write. The only third party library mentioned in this book (unless I missed it) is “glide” in the chapter on Android TV and then only because it comes as standard with the AS wizard.
The following chapters up to chapter 9 are equally useless. For anyone supposed to be a professional developer (or even anyone who have managed there first “Hello Android” program) There are no useful patterns to take home. Again there is no more (or actually a lot less) than can be found on the developer site. For example the chapters on Views. This is basically just a list of some of the views and three (or so) sentences on each view, the RecycleView is described with two very short paragraphs. Who is this chapter written for? Who is the intended audience? As a developer you know the views exists an if not there is not a single shred of useful information or gotchas or best practices here to help you over and above the developer docs. For example, there is not a single mention about the intended lack of SimpleCursorAdapter variant for RecycleView and the integration with ContentProviders which is a common question even from senior developer when they are switching over to RecycleView.
From chapter 10 there is a small shift in that here the author tries, but fails, to give some example on how to parse XML. Again, if you know this there is a lot lacking and, quite frankly shows a lack of understanding and structure. If you don’t, this chapter at best directs you to the Android documentation for the XML parsers. Here would have been a good chance for some discussions on, say, JSON vs XML. But again, as is common with this book lacks any analysis or actually any patterns.
In the chapter about networking the Author mentions the Volley library (but not, say, OkHttp-library) and as an example actually uses an AsyncTask to do network operation. Here there are different opinions but in my opinion this is a poor use for AsyncTask nor is there any discussions about the potential drawbacks and problems using AsyncTask. Nor is there, in the entire book, any discussion on the other various methods in Android for asynchronous processing which I would definitely expect to see in a book aimed at showing “patterns for professional developers”.
From chapter 11 and onwards some more code is used as illustration. The chapter about Bluetooth and NFC (13) is the only chapter that contains some real information in the entire book. It suddenly seems like the author can write about something he actually knows something about and he wants to get into the nitty gritty details about BT handshake and the protocol differences between legacy BT and BT Low Energy (BLE). It is almost as someone else had written this chapter since the amount of details given here is nowhere to be found in any other chapters. However, I don’t have the technical expertize in BT protocol details to see if anything vital is missing. However, given the big holes in the areas I do know it would be a positive surprise if this was fully covered. One could here question the editors choice of why this area is described in such details when arguable other areas that will affect many more developers is passed over with a single sentence.
The chapter about optimization (18) is again pointless. In any serious discussion about memory and garbage collection I would expect to see a discussion about the use of, say, WeakReference as a best practice pattern when storing a reference to an activity in, say, a Handler to avoid OOM issues and other type of memory problem related to the activity life cycle.
The remaining two chapters are again fillers about Android for TV and how to deploy an app on Google Playstore.
The word plagiarism is hard but it comes very close to mind in the chapter on TV. It starts with “The best way to start an Android TV project is to use Android Studio…”. The rest of the chapter runs the Studio project creation wizard and gives us details on what buttons to press in order to create a new project in AS (and this is in the end of a book targeting professionals …). He then explains the created manifest file. In sentence by sentence. When it comes to the description of dependencies the author, when explaining why RecycleView is imported, gives us the important tidbit of information that the “The RecycleView is used for large lists..”.
There was a time when a title by Addison Wesley was almost a guarantee for solid piece of work. I feel old remembering that.
Please AW/Pearson can you make this right by donating the money I paid for this book to a registered charity of your liking and retract this book and apologise.
Top reviews from other countries
it's just a confused primer introducing the usual things but 'in a hurry' and with no insights nor explanations.
i don't understand why i see no reviews on my kindle...if i had checked on amazon or kindle android app (where this book gets the reviews it deserves) i woudn't have wasted my money