Elements of Android Jetpack

After a decade’s worth of Android app development, 2018 debuted the second generation of Android app development techniques, highlighted by Jetpack and the AndroidX family of libraries.

This book follows in the footsteps of The Busy Coder’s Guide to Android Development, to introduce developers to Android app development, focusing on Jetpack. Here you will learn how to set up an Android app for Java or Kotlin, create a user interface, and more!

In particular, it covers Android through Android 12, plus it covers Android Studio Arctic Fox.

This book is published in PDF, EPUB, and MOBI/Kindle formats, for use in your favorite digital book reader. Or, read directly in your Web browser. Note that the HTML edition will be taken down at the end of 2025, as this book will be rather old at that point. However, the downloadable forms (PDF, etc.) will still be available.

Read Here Get at Barnes & Noble Get at Kobo


  • FINAL Version
  • Published on: 2021-12-25
  • 928 pages
  • Source code
  • Errata

The Table of Contents

Each bullet shown below represents a chapter. Use the search field in the nav bar to search all of the CommonsWare books to see what they hold!

  • Introducing Android
  • Setting Up the Tools
  • Getting Your First Project
  • Taking a Tour of Android Studio
  • Examining Your Code
  • Exploring Your Resources
  • Inspecting Your Manifest
  • Reviewing Your Gradle Scripts
  • Inspecting the Compiled App
  • Touring the Tests
  • Introducing Jetpack
  • Introducing the Sampler Projects
  • Starting Simple: TextView and Button
  • Debugging Your App
  • Introducing ConstraintLayout
  • Integrating Common Form Widgets
  • Contemplating Contexts
  • Icons
  • Adding Libraries
  • Employing RecyclerView
  • Coping with Configurations
  • Integrating ViewModel
  • Understanding Processes
  • Binding Your Data
  • Defining and Using Styles
  • Configuring the App Bar
  • Implementing Multiple Activities
  • Adding Library Modules
  • Adopting Fragments
  • Navigating Your App
  • Dialogs
  • Writing an App Widget
  • Thinking About Threads and LiveData
  • Adding Some Architecture
  • Working with Content
  • Using Preferences
  • Requesting Permissions
  • Handling Files
  • Accessing the Internet
  • Inverting Your Dependencies
  • Storing Data in a Room
  • Testing Your Changes
  • Working with WorkManager
  • Creating a New Project
  • Signing Your App
  • Shrinking Your App
  • Using the AVD Manager and the Emulator
  • Using the SDK Manager
  • Configuring Your Project
  • Configuring Android Studio
  • Coping with New Android Versions
  • Deciding Where to Go From Here