Your Second Kotlin Android App

Aug 29 2023 · Kotlin 1.8.21, Android 13, Android Studio Flamingo | 2022.2.1

Part 3: Save Preferences

18. Explore Shared Preferences

Episode complete

Play next episode

About this episode

Leave a rating/review

See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 17. Introduction Next episode: 19. Create a ViewModel

Get immediate access to this and 4,000+ other videos and books.

Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and 4,000+ professional videos in a single subscription, it's simply the best investment you can make in your development career.

Learn more Already a subscriber? Sign in.

Heads up... You've reached locked video content where the transcript will be shown as obfuscated text.

To create a to-do list, you need to save them to disk. Android comes with lots of different ways to save data. In fact, we have an entire course on saving data that is a part of the Android Learning Path.

class ListDataManager(private val context: Context) {

fun saveList(list: TaskList) {

val sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context).edit()
implementation 'androidx.preference:preference-ktx:1.2.0'
sharedPrefs.putStringSet(, list.tasks.toHashSet())
fun readLists(): ArrayList<TaskList> {

val sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context)
val contents = sharedPrefs.all
val taskLists = ArrayList<TaskList>()
for (taskList in contents) {

val taskItems = ArrayList(taskList.value as HashSet<String>)
val list = TaskList(taskList.key, taskItems)
return taskLists