So I\'ve just implemented a widget for my app. It gets its data from the database through my ContentProvider
. I define my own read/write-permissions in my manifest,
I was able to find the answer here, credit goes to Kostya Vasilyev.
While the context is actually correct, it is bound to the wrong process.
So the key is to do this:
public void onDataSetChanged() {
// Revert back to our process' identity so we can work with our
// content provider
final long identityToken = Binder.clearCallingIdentity();
// Update your cursor or whatever here
// ...
// Restore the identity - not sure if it's needed since we're going
// to return right here, but it just *seems* cleaner
Binder.restoreCallingIdentity(identityToken);
}