I wrote a blog post on this subject. You can also check this answer for more information. Hope this reveals everything for you.
As Barak mentioned, you can implement CursorLoader without content providers by extending the AsyncTaskLoader<Cursor> class. However, most tutorials and sample code use ContentProvider s, and the Android team seems to be encouraging its use. It is also much more complicated than implementing your own class.
However, if you really don't want to use content providers, Dianne Hackborn (one of the developers of the Android framework, also known as “hackbod” here on SO) suggests writing your own loader, which instead uses your content provider database class. The easiest way is to simply take the source of the CursorLoader class from the compatibility library and replace the provider requests with the queries with your own db helper class.
Alex Lockwood Jun 13 2018-12-12T00: 00Z
source share