Markos Sankey
Markos Sankey

Reputation: 3

Capacitor - open file without caching it locally

I've got the following bit of code that works for opening a base64 file by first caching it, and then opening it. I'm wondering if there is a way to preview it without caching it locally.

import { Filesystem, Directory } from '@capacitor/filesystem';
import { FileOpener } from '@capacitor-community/file-opener';

export type PreviewFileOptions = {
  fileName: string;
  contentType: string;
  base64Str: string;
};

async function previewFile(args: PreviewFileOptions): Promise<void> {
  try {
    const response = await Filesystem.writeFile({
      path: args.fileName,
      data: args.base64Str,
      directory: Directory.Cache,
      recursive: true,
    });
    await FileOpener.open({
      filePath: response.uri,
      contentType: args.contentType,
      openWithDefault: true,
    });
  } catch (e) {
    // handle error
  }
}

Upvotes: 0

Views: 28

Answers (0)

Related Questions