More advanced persistence
Let's think about what we need to do. We want to save a bunch of notes to the internal storage. Being more specific, we want to store a selection of strings and related Boolean values. These strings and Boolean values represent the user's note title, the note's text, and whether or not it is a to-do, important, or idea.
Given what we already know about the SharedPreferences
class, at first glance, this might not seem especially challenging until we dig a little deeper into our requirements. What if the user loves our app and ends up with 100 notes? We would need 100 identifiers for the key-value pairs. This is not impossible but is starting to get awkward.
Now, consider that we want to enhance the note app and give the user the ability to add dates to them. Android has a Date
class that is perfect for this. It would be fairly straightforward to then add neat features like reminders to our app. But when it comes to saving data, all of a sudden, things...