Stay organized with collections Save and categorize content based on your preferences.

Save changes in your app

Learn how to save user's data in the app. First you'll use Room to read and write changes to a database. Then you'll use Preferences DataStore to store user preferences in the app.


Using Room Kotlin APIs

Video Optional

Learn how to use and test Room Kotlin APIs.

Persist data with Room


Learn to build an app that uses Room to save inventory items into a SQLite database.

Read and update data with Room


Learn how to read, display, update, and delete data from the app’s SQLite database using Room.

Repository Pattern


Implement caching in an existing app using the repository pattern.

Preferences DataStore


Learn how to use a data storage solution called Jetpack DataStore to store a key-value pair in your application.

Project: Forage app


The completed Forage app allows users to keep track of items, food for example, that they've foraged for in nature. This data is persisted between sessions using Room. You'll use your knowledge of Room and performing read, write, update, and delete operations on a database to implement persistence in the Forage app.


Test your knowledge of the Room library, and earn your data persistence badge.