The the client side of a content provider consumer I can do something like this, to get a proper InputStream for reading the picture:
InputStream is = getContentResolver().openInputStream(pictureUri);
It is a nice API, and will on the server side, the actual content provider result in a call to:
public ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException {
// Open a proper ParcelFileDescriptor, most likely using openFileHelper(uri, mode)
}
But what if the picture mapped to the URI is not to be found on the filesystem, but as a memory resource, or generated on the fly.
Can I create a memory mapped File
or InputStream
, or anything else, so that I am not required to save a temporary file to disk, just to be able to return it to my content provider consumer?