The book I’ve been using to learn Android development is from the Big Nerd Ranch guides. It has been difficult to find a book that suits my needs because I’m not a complete beginner, but I’m also not advanced and it seems like every book on the market caters to those two market segments. The text is either dumbed down to the point where it feels like the author is talking down to you or so complex that you have to research the topics to understand. This book is full of clear explanations and feels like a learning tool. The book isn’t colorful, or very pretty, but if used as a tool for building great applications it is worth its weight in gold (this book is huge and that’s still an accurate metaphor). Don’t let its simple appearance fool you.
This Big Nerd Ranch Guide seems to cover everything you would need and the language is accessible to a non-technical person. I like the format. You start building an app then you cover why you are writing the lines of code. Some of the info I had already learned watching YouTube videos but I always find myself having to watch videos repeatedly and because most YouTube videos do not walk you through creating an app it feels a bit disjointed. The Big Nerd Ranch Guide teaches you how to create apps step by step in a cohesive way. One thing I found helpful is that as you progress through the book you go back to previously written code and update it to add more functionality. Although that may sound like it is just creating extra work for you I think it is worthwhile because you build on the complexity but in your own apps you may not need the more complex versions found later in the book. Since you are learning how and why things work it is easier to use things learned in your own apps.
I haven’t finished the book so if my feelings change I will update this post. As of now this is the best book I’ve used.
If you are getting one book on Android Development, this is it.