Our editors independently research, test, and recommend the best products; you can learn more about our review process here. We may receive commissions on purchases made from our chosen links.
Big Nerd Ranch built its reputation on running week-long intensive boot camps for developers, and the company has packaged that experience into a small range of programming guides.
With a focus on practical techniques and approaches, Android Programming doesn't require any previous Android development experience. It does assume a reasonable level of pre-existing Java knowledge, however, so it can focus fully on the Android-specific elements. The company also offers a Java programming guide, for those new to the subject.
Using Android Studio, the book explains concepts via a series of example apps that are expanded and improved on in each chapter. Code is explained line-by-line, both in terms of what's going on, and why it's being approached in that particular way.
It's a large, detailed book, due in part to the many screenshots and code snippets used to help explain each section. With particular attention paid to basic and mid-range concepts, if you're a Java programmer new to Android development, this Big Nerd Ranch guide is the one to go for.
Neil Smyth's Android Studio 3.0 Development Essentials is a great all-round introduction to creating Android apps, its 700+ pages covering almost everything you need to know.
From the development environment to architecture and design, printing and database management to multimedia aspects and more, the book (fully updated for Android 8 and Android Studio 3) discusses it all in detail and provides a strong knowledge base to build on in the future.
With plenty of code examples and descriptions, the guide is intended for those who already have at least some experience programming in Java. Particularly strong on the configuration and use of Android Studio, including setting up virtual test devices, it also covers things like map implementation and submitting apps to the Play store that are often poorly covered in other guides. Overall, it's the ideal one-stop shop for budding Android developers.
Head First takes an unusual approach with its guides. With a strong focus on pictures and casual language rather than dry, text-heavy tomes, the aim is to help readers learn, understand, and retain new concepts.
The company's Android Development is no exception, full of diagrams, flowcharts, and comments to reinforce what's being covered. Redundancy is a key part of Head First's approach, with key material being referenced multiple times in a variety of ways to help it stick.
All of those images and repetition make this a huge book — at over 900 pages, it can seem intimidating at first glance and is intended as a full classroom replacement rather than a quick-reference guide.
You'll need a good working knowledge of Java, but don't need to be an expert already. Practical exercises abound, and homework is set at the end of each chapter. These are key aspects of the guide's approach — you'll rarely find yourself simply reading the material and moving on.
If you're a visual learner, or otherwise struggle to retain information when it's presented as a dense wall of text, Head First Android Development will be a welcome change of pace.
Whether you consider yourself a gifted primate or not, Antonis Tsagaris's Android Development for Gifted Primates is an interesting option. Often using strong language and unafraid to express an opinion, the author suggests his guide as an alternative to "dry, humorless, life-sucking coding books [...] written by an automaton."
Aimed at beginners, this comparatively-short and inexpensive book requires only a basic level of experience with Java or similar programming language to get started. Available in printed or ebook form, it takes the reader through Android development from the absolute basics to finishing your first application.
Along the way, you'll learn how to set up the Android Studio development environment, create an interactive user interface with XML, get different Android components to communicate with each other, and plenty more.
If you're easily offended, you may want to look at one of the other Android development guides — but if not, this is an entertaining and useful place to start.
Rather than trying to be a complete Android development tutorial, Android Cookbook focuses on providing quick answers to common problems.
With over 230 "recipes" for things like user interfaces, multimedia, and location services, plus dealing with hardware-specific aspects like cameras and sensors, the guide is aimed at those already reasonably familiar with developing for Android devices.
Around 40 developers contributed to the book, and it benefits from the wide range of perspectives and experience. Each recipe comes with sample code that you can use in your own projects, either a snippet or full working solution as appropriate.
Since it's designed to be dipped in and out of based on your current needs, the book's size (700+ pages) doesn't become overwhelming. If you're looking for straightforward answers to knotty Android development issues, this cookbook deserves a place on your desk.
Since Google announced full support for the Kotlin programming language within Android Studio, it's quickly become the next big thing in Android development circles. Interoperable with Java in many ways, yet more concise to write in and with dozens of useful new features, many existing Android coders are making the switch.
Big Nerd Ranch has written a definitive book on coding in version 1.2 of this relatively new language, using the same hands-on approach as in its other books and well-respected boot camps.
Aimed at experienced Java developers looking to learn Kotlin, the guide covers all of the language's key concepts and APIs, as well as the IDEA development environment.
Starting from first principles, then diving deep into the language's mix of object-oriented and functional programming approaches, it's the ideal way to get started with Kotlin, both for Android and other platforms.
The author of Practical Android is an experienced Android instructor, and this guide draws on some of his most-popular course content. Each chapter is based around a particular concept, from connectivity to push notifications, and does a deep dive into the best way to implement it in your own apps.
With at least one full project in each chapter, it's easy to follow along with even complex topics like lazy loading or dealing with Android's audio APIs, and use whichever parts of the sample code are appropriate.
Explaining the why as well as the how, the author backs up his own approaches with links to relevant material elsewhere. It's expected that those using the book will already be well-versed with Java and have previous experience developing in Android — this isn't a step-by-step guide for beginners.
Like anything else in the technology world, Android development moves quickly, and printed books eventually become out of date. Mark Murphy's Busy Coder's Guide to Android Development gets around this problem via a subscription-based ebook model. Buyers get the latest version of the book, plus six months of updates, with new versions coming out every couple of months.
Coming in at a mammoth 200+ chapters, 4,000+ pages, hundreds of sample apps, plus visual presentations on Android app development topics, no stone is left unturned. The book's core chapters cover the basics of setting up a development environment, user interfaces, data management, and much more, before branching off into "trails" that cover dozens of advanced topics designed to be read as-needed.
As well as the book itself, buyers can ask questions of the author during "office hours" chats each week. If you don't need a physical book to read, The Busy Coder's Guide to Android Development is the most comprehensive and up-to-date resource available.