I manage to create a working CursorWrapper, but get stuck when I want to use my ContentProvider across processes.
These posts even show how to implement the CrossProcessCursor interface, notably the hard and undocumented fillWindow() method:
The problem is that I can think only of an implementation of fillWindow() that deals with a cursor with either all columns containing Blobs, or Strings, or ..., but not a mix of those, as a real-world cursor is bound to have. The real issue here is a lack of a getType() function (exists only from v11 on), or a getRaw()/putRaw() that would just copy binary without complaining. How do you deal with this without incurring unwanted conversions in your returned cursor values?
I've implemented it as follows for now, but it does not feel like the right thing to do or robust: