Important: This API works only on Chrome OS.

Manifest

You must declare the "fileSystemProvider" permission in the extension manifest to use the File System Provider API. For example:

{
  "name": "My extension",
  ...
  "permissions": [
    "fileSystemProvider"
  ],
  ...
}

Overview

File System Provider API allows extensions to support virtual file systems, which are available in the file manager on Chrome OS. Use cases include decompressing archives and accessing files in a cloud service other than Drive.

File handlers

Provided file systems can either provide file system contents from an external source (such as a remote server), or using a local file (such as an archive) as its input.

In the second case, the providing extension should have a file_handlers manifest entry in order to be launched when the file is selected in the file manager. When the extension is executed with a file to be handled, it has to mount a file system and start serving contents from the provided file.

Life cycle

Provided file systems once mounted are remembered by Chrome and remounted automatically after reboot or restart. Hence, once a file system is mounted by a providing extension, it will stay until either the extension is unloaded, or the extension calls the unmount method.

In case of acting as a file handler, the handled file may need to be stored to access it after either a reboot, or suspending and resuming an event page of the providing extension. In such case chrome.fileSystem.retainEntry and chrome.fileSystem.restoreEntry should be used.