CursorLoader not updating after data change

android, android-contentprovider, android-cursorloader, android-loadermanager

Solution

Did you call `setNotificationUri(ContentResolver cr, Uri uri)` on the `Cursor` before returning it in `ContentProvider.query()`?

And did you call `getContext().getContentResolver().notifyChange(uri, null)` in the 'insert' method of your `ContentProvider`?

EDIT:

To get a `ContentResolver` call `getContext().getContentResolver()` in your `ContentProvider`.

Problem

I have created a small application, trying to understand the functionality of the `LoaderManager` and `CursorLoader`-classes. I have implemented `LoaderCallbacks<Cursor>` on my `FragmentActivity`-class and everything works fine, except the fact that when I update my data via `ContentResolver.update()` or `ContentResolver.insert()`-methods, `onLoadFinished()` is not called and as a result my data doesn't update. I have a custom ContentProvider and I am wondering if the problem is in my ContentProvider not notifying that the data changed or something else.

Original source