"Premature optimization is the root of all evil." | ||
---Donald Knuth |
We covered a very important concept in the previous chapter: content provider. We progressed in a step-by-step manner, covering essential questions such as how to create a content provider and how to use an existing system with a content provider in detail. We also covered how to use the content provider we created by means of creating a test application to access it.
In this chapter, we will explore how to use loaders, in particular, a loader called cursor loader. We will look at how to interact with a content provider asynchronously with the help of an example. We will discuss the important topic of security in the Android database and how we can ensure that data is secured in an Android model. Last but not least, we will also see some code snippets that will cover topics such as how to upgrade a database and how to ship a preloaded database with our application.
In this chapter, we will cover...