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 que seleccione 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
Tipos
AcceptOption
Propiedades
-
description
cadena opcional
Esta es la descripción de texto opcional para esta opción. Si no está presente, se generará automáticamente una descripción que generalmente contiene una lista expandida de extensiones válidas (por ejemplo, "text/html" puede expandirse a "*.html, *.htm").
-
extensions
string[] opcional
Extensiones que se deben aceptar, p.ej., “jpg”, “gif” o “crx”.
-
mimeTypes
string[] opcional
Tipos MIME que se deben aceptar, p.ej., “image/jpeg” o “audio/*”. Uno de los tipos MIME o las 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
Indica si se deben aceptar 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 Accept o no contiene entradas válidas, este valor se restablecerá siempre a verdadero.
-
acceptsMultiple
booleano opcional
Indica si se aceptan varios archivos. Esto solo se admite para openFile y openWritableFile. Si se establece como verdadero, se llamará a la devolución de llamada a chooseEntry con una lista de entradas. De lo contrario, se llamará con una sola entrada.
-
suggestedName
cadena opcional
El nombre de archivo sugerido que se presentará al usuario como el nombre predeterminado para leer o escribir. Esto es opcional.
-
Tipo
ChooseEntryType opcional
Es el tipo de mensaje que se mostrará. El valor predeterminado es "openFile".
ChooseEntryType
Enum
"openFile"
Le solicita al usuario que abra un archivo existente y, si la operación es exitosa, se muestra una FileEntry. A partir de Chrome 31, se podrá escribir en FileEntry si la aplicación tiene el permiso de escritura en “fileSystem”. De lo contrario, FileEntry será de solo lectura.
"openWritableFile"
Le solicita al usuario que abra un archivo existente y, si se ejecuta correctamente, muestra una FileEntry que admite escritura. Las llamadas que usen este tipo fallarán y mostrarán un error de entorno de ejecución si la aplicación no tiene el permiso de escritura en “fileSystem”.
"saveFile"
Le solicita al usuario que abra un archivo existente o nuevo y, si se ejecuta correctamente, muestra una FileEntry que admite escritura. Las llamadas que usen este tipo fallarán y mostrarán un error de entorno de ejecución si la aplicación no tiene el permiso de escritura en “fileSystem”.
"openDirectory"
Le solicita al usuario que abra un directorio y, cuando se ejecuta correctamente, muestra una DirectoryEntry. Las llamadas que usen este tipo fallarán con un error de tiempo de ejecución si la aplicación no tiene el permiso “directory” en “fileSystem”. Si la aplicación tiene el permiso de escritura en “fileSystem”, el objeto DirectoryEntry que se muestra tendrá permisos de escritura; de lo contrario, será de solo lectura. Nuevo en Chrome 31.
RequestFileSystemOptions
Propiedades
-
volumeId
cadena
El ID del volumen solicitado.
-
admite escritura
booleano opcional
Indica si se debe poder escribir en el sistema de archivos solicitado. La configuración predeterminada es de solo lectura.
Volume
Propiedades
-
volumeId
cadena
-
admite escritura
boolean
VolumeListChangedEvent
Propiedades
-
volumes
Métodos
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
Pídele al usuario que elija un archivo o directorio.
Parámetros
-
Opciones
ChooseEntryOptions opcional
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(entry?: Entry, fileEntries?: FileEntry[]) => void
-
entry.
Entrada opcional
-
fileEntries
FileEntry[] opcional
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
Obtén la ruta visible de un objeto Entry. La ruta visible se basa en la ruta completa del archivo o directorio en el sistema de archivos local, pero puede ser más legible para fines de visualización.
Parámetros
-
entry.
Entrada
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(displayPath: string) => void
-
displayPath
cadena
-
Devuelve
-
Promesa<string>
Chrome 117 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
)
Muestra una lista de volúmenes disponibles para requestFileSystem()
. Se requiere el permiso "fileSystem": {"requestFileSystem"}
del manifiesto. Disponible únicamente para las aplicaciones de kiosco que se ejecutan en la sesión de kiosco. En caso de error, volumes
no estará definido y se establecerá chrome.runtime.lastError
.
Parámetros
Devuelve
-
Promesa<Volumen[] | undefined>
Chrome 117 y versiones posterioresLas 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á y mostrará un error de tiempo de ejecución si la aplicación no tiene el permiso de escritura en el sistema de archivos. Si la entrada es DirectoryEntry, esta llamada fallará si la aplicación no tiene el permiso “directorio” en “fileSystem”.
Parámetros
-
entry.
Entrada
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(entry: Entry) => void
-
entry.
Entrada
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
Devuelve si la app tiene permiso para restablecer la entrada con el ID dado.
Parámetros
-
id
cadena
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(isRestorable: boolean) => void
-
isRestorable
boolean
-
Devuelve
-
Promise<boolean>
Chrome 117 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
)
Obtiene si esta entrada puede escribirse 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
-
Devuelve
-
Promise<boolean>
Chrome 117 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
)
Solicita acceso a un sistema de archivos para un volumen representado por options.volumeId
. Si estableces options.writable
como verdadera, 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 ejecutan en una 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 activa de la app. En caso de error, fileSystem
no estará definido y se establecerá chrome.runtime.lastError
.
Parámetros
-
Opciones
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(fileSystem?: FileSystem) => void
-
fileSystem
Sistema de archivos opcional
-
Devuelve
-
Promise<FileSystem | undefined>
Chrome 117 y versiones posterioresLas 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,
)
Muestra la entrada de archivo con el ID especificado si se puede restablecer. De lo contrario, esta llamada fallará y mostrará un error de entorno de ejecución.
Parámetros
-
id
cadena
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(entry: Entry) => void
-
entry.
Entrada
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
Muestra un ID que se puede pasar a resetEntry para recuperar el acceso a una entrada de archivo determinada. Solo se conservan las 500 entradas usadas más recientemente, donde las llamadas a keepEntry y resetEntry cuentan como uso. Si la app tiene el permiso “retainEntries” en “fileSystem”, las entradas se conservan indefinidamente. De lo contrario, las entradas se conservarán solo mientras la app se esté ejecutando y entre reinicios.
Parámetros
-
entry.
Entrada
Devuelve
-
cadena
Eventos
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Se llama cuando se cambia una lista de volúmenes disponibles.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(event: VolumeListChangedEvent) => void
-
event
-