Building an Android App with Jetpack Libraries
2h 32mBeginner2020-09-10
Authors

David Gassner
Author of 60+ video-based training courses for software developers
Course details
Android Jetpack lets you create stable, maintainable apps with well-thought-out architectures. Jetpack libraries help developers focus on best practices, reduce repetition, and write code that runs on all supported Android versions and devices. In this course, instructor David Gassner introduces his favorite Jetpack libraries and functionality using a practical, hands-on project: building a new Android app from scratch. Discover how to display a list of data, create a screen for editing, manage data in memory, add data to persistent storage, and edit and update records. Along the way, you can learn how to leverage the Navigation, Room, and other libraries, as well as features such as RecyclerViews, fragments, and adapter and type converter classes, in your own Android apps. You'll be surprised by how much you can do with such a small amount of code—and how much faster and scalable your development workflow can be—with the addition of Jetpack libraries.
Topics include:
Configuring Android Studio
Adding a navigation controller
Creating a custom layout for the list
Binding data to the RecyclerView
Creating an editor screen
Passing data to fragments
Managing data persistence with Room
Unit testing database logic
Managing data and business logic
Adding and deleting records from the database
Editing and deleting records
Topics include:
Configuring Android Studio
Adding a navigation controller
Creating a custom layout for the list
Binding data to the RecyclerView
Creating an editor screen
Passing data to fragments
Managing data persistence with Room
Unit testing database logic
Managing data and business logic
Adding and deleting records from the database
Editing and deleting records
Skills covered
Android DevelopmentAndroidMobile DevelopmentGoogleDeep Dive (X:Y)
Concepts
0. Introduction
- 01 - Explore the Android Jetpack libraries
- 02 - What you should know
- 03 - Install the finished app from Google Play
1. Getting Started
- 04 - The history of Plain Ol' Notes
- 05 - Configure Android Studio for this app
- 06 - Clone the exercise files repo from GitHub
- 07 - Create a launcher icon
- 08 - Create other required graphics
2. Display a List of Data Objects
- 09 - Add a navigation controller to the activity
- 10 - Add a RecyclerView to the main fragment
- 11 - Create a custom layout for list rows
- 12 - Create a data entity class
- 13 - Create sample data for testing
- 14 - Create a RecyclerView adapter
- 15 - Bind data to the RecyclerView
3. Create an Editor Screen
- 16 - Add a second fragment to edit notes
- 17 - Handle a click event on a list item
- 18 - Pass selected data to a fragment
- 19 - Navigate up to a previous destination
4. Manage Data Persistence with Room
- 20 - Turn a data class into a Room entity
- 21 - Implement database operations in a DAO
- 22 - Create a custom type converter
- 23 - Define an SQLite database with Room
- 24 - Create a unit test for database logic
- 25 - Challenge - Add another unit test for database logic
- 26 - Solution - Add another unit test for database logic
5. Manage Data and Business Logic
- 27 - Add an options menu to the main fragment
- 28 - Add sample notes to the database
- 29 - Support selecting RecyclerView items
- 30 - Delete selected notes from the database
- 31 - Challenge - Support deleting all notes
- 32 - Solution - Support deleting all notes
6. Edit and Update Notes
- 33 - Display a selected note in the editor fragment
- 34 - Edit existing notes
- 35 - Create new notes
- 36 - Maintain editor state through configuration changes
- 37 - Maintain note selections through configuration changes
Conclusion
- 38 - Next steps
Related courses
- Exploring Ktor with Kotlin Multiplatform and Compose
- Building an Android App with Architecture Components
- Building AI-Powered Android Apps with Gemini
- Programming for Non-Programmers: Android & Kotlin
- Android Compose with Kotlin
- Android Development Essential Training: Distributing Apps with Java
- Android Development Essential Training: Your First App with Kotlin
- Processing: Interactive Data Visualization