Table of Contents

1.1 Mobile app development
1.2 Android platforms and app construction
1.3 Android Studio, APKs, and emulators
1.4 The Pizza Party app
1.5 App resources
1.6 Value resources
1.7 Drawable resources
1.8 Debugging
1.9 App Manifest
1.10 Model-View-Controller (MVC)

2.1 Layouts
2.2 Linear, Relative, and Constraint layouts
2.3 Table, Grid, and Frame layouts
2.4 Widgets and event handling
2.5 Button widgets
2.6 Text widgets
2.7 Widgets for selecting options
2.8 ‘Bar’ widgets
2.9 ImageView widget
2.10 Styles and themes

3.1 Activity lifecycle
3.2 Restoring activity state
3.3 The Lights Out app
3.4 Handling rotations in Lights Out
3.5 Multiple activities and intents
3.6 Implicit intents

4.1 App Bar
4.2 The Dice Roller app
4.3 Dialogs
4.4 Context menus
4.5 Handling touch
4.6 Touch gestures

5.1 Fragment essentials
5.2 The Band Database app
5.3 Fragment arguments
5.4 Fragment and activity interaction
5.5 Fragment with RecyclerView
5.6 Hosting multiple fragments

6.1 Shared preferences
6.2 Working with files
6.3 The To-Do List app
6.4 The Study Helper app
6.5 Room persistence library
6.6 Adding, editing, and deleting questions
6.7 RecyclerView: Adding and removing subjects
6.8 App settings
6.9 Web APIs and Volley

7.1 Main and background threads
7.2 AsyncTask
7.3 Handlers and Loopers
7.4 The Timer app
7.5 Services and notifications

8.1 Shape and custom drawables
8.2 Animation drawables and view animations
8.3 Property animations
8.4 Custom views
8.5 The Dotty app
8.6 Adding animation to Dotty
8.7 Playing sounds
8.8 SurfaceView

9.1 Sensors overview
9.2 Motion sensors
9.3 The Rollerball app
9.4 Camera
9.5 The Photo Express app
9.6 Saving photos
9.7 Location and Google Play Services
9.8 The Find Me app

10.1 Testing fundamentals
10.2 Unit tests and JUnit
10.3 Local and instrumented unit tests
10.4 Integration tests and Espresso
10.5 UI tests

11.1 Working with files API 28
11.2 The To-Do List app API 28
11.3 SQLite
11.4 Camera API 28
11.5 The Photo Express app API 28

A highly-interactive introduction to Mobile App Development

Mobile App Development with Android and Jetpack Compose covers user interface components, fragments, application resources and sensors, and other key topics.

  • Over 400 participation activities, including dynamic animations and question sets
  • Students can run Kotlin programs directly in the zyBook
  • Covers modern Android development to build six complete apps using Jetpack Compose
  • Includes recent changes to the Android platform, supporting Android Studio Jellyfish and Android 14.0
  • Adopters have access to a test bank with over 250 questions

How this zyBooks works:

What is a zyBook?

Mobile App Development with Android and Jetpack Compose is a web-native, interactive zyBook that helps students visualize concepts to learn faster and more effectively than with a traditional textbook. (Check out our research.)

Since 2012, over 1,700 academic institutions have adopted digital zyBooks to transform their STEM education.

zyBooks benefit both students and instructors:

  • Instructor benefits
  • Customize your course by reorganizing existing content, or adding your own content
  • Continuous publication model updates your course with the latest content and technologies
  • Robust reporting gives you insight into students’ progress, reading and participation
  • Save time with auto-graded labs and challenge activities that seamlessly integrate with your LMS gradebook
  • Build quizzes and exams with hundreds of included test questions
  • Student benefits
  • Learning questions and other content serve as an interactive form of reading
  • Instant feedback on labs and homework
  • Concepts come to life through extensive animations embedded into the interactive content
  • Review learning content before exams with different questions and challenge activities
  • Save chapters as PDFs to reference the material at any time


Frank McCown
Professor of Computer Science, Harding University

Instructors: Interested in evaluating this zyBook for your class?