Recall & Review
beginner
What is SharedPreferences used for in Android?
SharedPreferences is used to store small amounts of simple data as key-value pairs, like user settings or preferences, that persist across app launches.
Click to reveal answer
intermediate
What is the main advantage of DataStore over SharedPreferences?
DataStore is more modern, supports asynchronous and type-safe data storage, and avoids blocking the main thread, making it safer and more efficient for storing data.
Click to reveal answer
beginner
How do you save a string value using SharedPreferences in Kotlin?
Use
edit() to get an editor, then putString(key, value), and finally apply() to save asynchronously.Click to reveal answer
intermediate
What are the two types of DataStore in Android?
Preferences DataStore (stores key-value pairs without a predefined schema) and Proto DataStore (stores typed objects using Protocol Buffers).
Click to reveal answer
beginner
Why should you avoid using SharedPreferences on the main thread?
Because SharedPreferences can block the main thread during read/write operations, causing the app UI to freeze or lag.
Click to reveal answer
Which method is used to save changes in SharedPreferences asynchronously?
✗ Incorrect
apply() saves changes asynchronously without blocking the main thread, while commit() saves synchronously.
What is a key benefit of using DataStore over SharedPreferences?
✗ Incorrect
DataStore supports asynchronous operations, improving app performance and responsiveness.
Which DataStore type uses Protocol Buffers for data storage?
✗ Incorrect
Proto DataStore uses Protocol Buffers to store typed data objects.
How do you read a value from SharedPreferences?
✗ Incorrect
Use getString(key, defaultValue) to read a string value from SharedPreferences.
Which of these is NOT a recommended practice when using SharedPreferences?
✗ Incorrect
SharedPreferences is not designed for storing large binary files; use other storage options instead.
Explain how to save and retrieve a user preference using SharedPreferences in Kotlin.
Think about how you store and read simple settings like a username.
You got /4 concepts.
Describe the differences between Preferences DataStore and Proto DataStore and when to use each.
Consider the complexity and type safety of your data.
You got /4 concepts.