The majority of mobile apps work with data. If you are not building a calculator app, or an arcade game, the possibility to store the data that your app is using can be very valuable. When designing your app, you need to make some architectural choices up front. Where and how is my data stored? One obvious solution is to store your data in the cloud. This approach is the most common, but what if you do not have network access? You still want to be able to work with your app, and with the latest version of your data. This is the main reason why you also want to store your data locally on the device.
In many cases, storing data as plain files, text or binary, is sufficient. However, it is also possible to embed a complete database system locally on the device. There are many relational and non-relational embedded databases available. If we think about an arbitrary...