chrome.fileSystem

Descripción

Usa la API de chrome.fileSystem para crear, leer, navegar y escribir en el sistema de archivos local del usuario. Con esta API, las Apps de Chrome pueden leer y escribir en una ubicación seleccionada por el usuario. Por ejemplo, una app de editor de texto puede usar la API para leer y escribir documentos locales. Todas las fallas se notifican a través de chrome.runtime.lastError.

Permisos

fileSystem

Disponibilidad

Solo en primer plano

Tipos

AcceptOption

Propiedades

  • descripción

    string opcional

    Esta es la descripción de texto opcional para esta opción. Si no está presente, se generará una descripción automáticamente. que normalmente contiene una lista expandida de extensiones válidas (p.ej., "text/html" puede expandirse a "*.html, *.htm").

  • extensions

    string[] opcional

    Extensiones que se aceptarán, p.ej., “jpg”, “gif”, “crx”.

  • mimeTypes

    string[] opcional

    Tipos de MIME que se aceptarán, p.ej., “imagen/jpeg” o “audio/*”. Uno de los tipos MIME o extensiones debe contener al menos un elemento válido.

ChooseEntryOptions

Propiedades

  • acepta

    AcceptOption[] opcional

    Es la lista opcional de opciones de aceptación para este abridor de archivos. Cada opción se presentará al usuario final como un grupo único.

  • acceptsAllTypes

    booleano opcional

    Si se aceptan todos los tipos de archivos, además de las opciones especificadas en el argumento Accept. El valor predeterminado es verdadero. Si no estableces el campo Accepted o no contiene entradas válidas, el valor se restablecerá siempre a true.

  • acceptsMultiple

    booleano opcional

    Especifica si se aceptan varios archivos. Esto solo es compatible con openFile y openWritableFile. Se llamará a la devolución de llamada a chooseEntry con una lista de entradas si se establece como verdadera. De lo contrario, se llamará con una sola entrada.

  • suggestedName

    string opcional

    El nombre de archivo sugerido que se presentará al usuario como el nombre predeterminado de lectura o escritura. Esto es opcional.

  • tipo

    ChooseEntryType opcional

    Tipo de la instrucción que se mostrará. La configuración predeterminada es "openFile".

ChooseEntryType

Enum

"openFile"
Le solicita al usuario que abra un archivo existente y muestra una FileEntry si la operación es exitosa. A partir de Chrome 31, FileEntry podrá escribirse si la aplicación tiene el permiso de escritura permiso en "fileSystem"; De lo contrario, FileEntry será de solo lectura.

"openWritableFile"
Le solicita al usuario que abra un archivo existente y, si la operación es exitosa, muestra una FileEntry con capacidad de escritura. Las llamadas que usen este tipo fallarán y arrojarán un error de tiempo de ejecución si la aplicación no tiene el permiso de escritura permiso en "fileSystem".

"saveFile"
Le pide al usuario que abra un archivo existente o nuevo, y muestra una FileEntry con capacidad de escritura si la operación es exitosa. Las llamadas que usen este tipo fallarán y arrojarán un error de tiempo de ejecución si la aplicación no tiene el permiso de escritura permiso en "fileSystem".

"openDirectory"
Le solicita al usuario que abra un directorio y muestra una DirectoryEntry si la operación es exitosa. Las llamadas que usan este tipo fallarán y se mostrará un error de tiempo de ejecución si la aplicación no tiene el “directorio”. permiso en "fileSystem". Si la aplicación tiene el rol de permiso en "fileSystem", la DirectoryEntry que se muestre podrá escribirse; de lo contrario, será de solo lectura. Novedades de Chrome 31.

RequestFileSystemOptions

Chrome 44 y versiones posteriores

Propiedades

  • volumeId

    string

    El ID del volumen solicitado.

  • admite escritura

    booleano opcional

    Indica si el sistema de archivos solicitado admite escritura. La configuración predeterminada es de solo lectura.

Volume

Chrome 44 y versiones posteriores

Propiedades

  • volumeId

    string

  • admite escritura

    boolean

VolumeListChangedEvent

Chrome 44 y versiones posteriores

Propiedades

Métodos

chooseEntry()

chrome.fileSystem.chooseEntry(
  options?: ChooseEntryOptions,
  callback: function,
)

Pídele al usuario que elija un archivo o directorio.

Parámetros

  • opciones
  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (entry?: Entry, fileEntries?: FileEntry[]) => void

    • entry.

      Entrada opcional

    • fileEntries

      FileEntry[] opcional

getDisplayPath()

Promesa
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)

Obtiene la ruta visible de un objeto Entry. La ruta de acceso para mostrar se basa en la ruta completa del archivo o directorio en el sistema de archivos local, pero es posible que sea más legible para la visualización.

Parámetros

  • entry.

    Entrada

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (displayPath: string) => void

    • displayPath

      string

Muestra

  • Promesa<string>

    Chrome 117 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

getVolumeList()

Promesa Chrome 44 y versiones posteriores .
chrome.fileSystem.getVolumeList(
  callback?: function,
)

Muestra una lista de volúmenes disponibles para requestFileSystem(). Se requiere el permiso del manifiesto "fileSystem": {"requestFileSystem"}. Disponible únicamente para las aplicaciones de kiosco que se ejecuten en la sesión de kiosco. En caso de error, volumes no estará definido y se establecerá chrome.runtime.lastError.

Parámetros

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (volumes?: Volume[]) => void

Muestra

  • Promise&lt;Volume[] | indefinido>

    Chrome 117 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

getWritableEntry()

chrome.fileSystem.getWritableEntry(
  entry: Entry,
  callback: function,
)

Obtén una entrada que admita escritura de otra entrada. Esta llamada fallará con un error de tiempo de ejecución si la aplicación no tiene el permiso de escritura permiso en "fileSystem". Si la entrada es de DirectoryEntry, la llamada fallará si la aplicación no tiene el “directorio”. permiso en "fileSystem".

Parámetros

  • entry.

    Entrada

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (entry: Entry) => void

    • entry.

      Entrada

isRestorable()

Promesa
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)

Devuelve si la app tiene permiso para restablecer la entrada con el ID proporcionado.

Parámetros

  • id

    string

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (isRestorable: boolean) => void

    • isRestorable

      boolean

Muestra

  • Promise&lt;boolean&gt;

    Chrome 117 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

isWritableEntry()

Promesa
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)

Obtiene si esta entrada admite escritura o no.

Parámetros

  • entry.

    Entrada

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (isWritable: boolean) => void

    • isWritable

      boolean

Muestra

  • Promise&lt;boolean&gt;

    Chrome 117 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

requestFileSystem()

Promesa Chrome 44 y versiones posteriores .
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)

Solicita acceso a un sistema de archivos para un volumen representado por options.volumeId. Si options.writable se establece como verdadero, se podrá escribir en el sistema de archivos. De lo contrario, será de solo lectura. La opción writable requiere el permiso "fileSystem": {"write"} en el manifiesto. Disponible únicamente para las aplicaciones de kiosco que se ejecuten en la sesión de kiosco. Para el modo kiosco de inicio manual, se mostrará un diálogo de confirmación en la parte superior de la ventana de la app activa. En caso de error, fileSystem no estará definido y se establecerá chrome.runtime.lastError.

Parámetros

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (fileSystem?: FileSystem) => void

    • fileSystem

      Sistema de archivos opcional

Muestra

  • Promise&lt;FileSystem | indefinido>

    Chrome 117 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

restoreEntry()

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)

Devuelve la entrada de archivo con el ID dado si se puede restablecer. De lo contrario, esta llamada fallará y mostrará un error de tiempo de ejecución.

Parámetros

  • id

    string

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (entry: Entry) => void

    • entry.

      Entrada

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)

Devuelve un ID que se puede pasar a replaceEntry para recuperar el acceso a una entrada de archivo determinada. Solo se conservan las 500 entradas usadas más recientemente, en las que las llamadas a keepEntry y restoreEntry cuentan como uso. Si la app tiene el campo "retainEntries" permiso en "fileSystem", las entradas se conservan indefinidamente. De lo contrario, las entradas se conservan solo mientras la app está en ejecución y después de un reinicio.

Parámetros

  • entry.

    Entrada

Muestra

  • string

Eventos

onVolumeListChanged

Chrome 44 y versiones posteriores
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

Se llama cuando se cambia una lista de volúmenes disponibles.

Parámetros