I am writing my DocuemtnProvider for Android OS. My application works with encrypted files. And i should return ParcelFileDescriptor on openDocument method.
I don't want store temp decrypted file. I Just want to override function like getStream() to return CipherInputStream.
Can anyone help me ?
Here is some code:
public static ParcelFileDescriptor prepareFileDescriptor(FileEntry entryForOpening, String mode, Handler handler) throws IOException {
int parsedMode = ParcelFileDescriptor.parseMode(mode);
File realFile = FileCache.get().fileFromRelCachePath(entryForOpening);
//TODO decrypt to temp set it into listener
FileDescriptorListener listener = new FileDescriptorListener(entryForOpening, parsedMode);
return ParcelFileDescriptor.open(realFile, parsedMode, handler, listener);
}