Retornando uma memória mapeada InputStream de um provedor de conteúdo?

O lado do cliente de um consumidor provedor de conteúdo eu posso fazer algo parecido com isto, para obter um InputStream apropriado para ler a imagem:

InputStream is = getContentResolver().openInputStream(pictureUri);

É uma boa API e, no lado do servidor, o provedor de conteúdo real resulta em uma chamada para:

public ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException {
  // Open a proper ParcelFileDescriptor, most likely using openFileHelper(uri, mode)
}

Mas e se a imagem mapeada para o URI não for encontrada no sistema de arquivos, mas como um recurso de memória ou gerada na hora.

Posso criar uma memória mapeadaFile ouInputStream, ou qualquer outra coisa, para que eu não seja obrigado a salvar um arquivo temporário em disco, apenas para poder devolvê-lo ao meu consumidor de provedor de conteúdo?

questionAnswers(2)

yourAnswerToTheQuestion