说明
使用 chrome.fileSystemProvider
API 创建可通过 ChromeOS 上的文件管理器访问的文件系统。
权限
fileSystemProvider
可用性
清单
您必须声明“fileSystemProvider”权限和扩展程序清单中的部分,才能使用 File System Provider API。例如:
{
"name": "My extension",
...
"permissions": [
"fileSystemProvider"
],
...
"file_system_provider_capabilities": {
"configurable": true,
"watchable": false,
"multiple_mounts": true,
"source": "network"
},
...
}
file_system_provider 部分必须按如下方式声明:
configurable
(布尔值)- 可选- 是否支持通过 onConfigureRequested 进行配置。默认值为 false。
multiple_mounts
(布尔值)- 可选- 是否支持多个(多个)装载的文件系统。默认值为 false。
watchable
(布尔值)- 可选- 是否支持设置观察器并通知更改。默认值为 false。
source
(“file”“device”或“network”的枚举)- 必需- 已装载文件系统的数据源。
“文件”应用会使用上述信息来适当地呈现相关界面元素。例如,如果将 configurable
设置为 true,系统会呈现用于配置音量的菜单项。同样,如果将 multiple_mounts
设置为 true
,“文件”应用将允许从界面添加多个装载点。如果 watchable
为 false
,则系统会呈现刷新按钮。请注意,如果可能,您应添加对监视器的支持,以便文件系统上的更改可以立即自动反映。
概览
File System Provider API 可让扩展程序支持虚拟文件系统,这些虚拟文件系统可在 ChromeOS 上的文件管理器中找到。用例包括解压缩归档文件和访问云端硬盘以外的云服务中的文件。
装载文件系统
提供扩展程序可以提供来自外部来源(如远程服务器或 USB 设备)的文件系统内容,也可以使用本地文件(如归档)作为输入。
若要编写属于文件处理程序的文件系统(源文件为 "file"
),提供程序必须是封装应用,因为扩展程序无法使用 onLaunched
事件。
如果来源是网络或设备,则在调用 onMountRequested 事件时,应装载文件系统。
文件系统数据来源 | 入口点 |
---|---|
"file" |
仅适用于打包应用。 |
"device" 或 "network" |
onMountRequested |
配置文件系统
装载后提供的文件系统可以通过 onConfigureRequested 事件进行配置。它对于通过网络提供内容以便设置适当凭据的文件系统尤为有用。处理此事件是可选操作。
生命周期
Chrome 会记住所提供的文件系统,并且在重新启动后会重新装载这些系统。因此,一旦某个文件系统被某个提供的扩展程序装载,它将一直保持有效状态,直到该扩展程序被卸载,或该扩展程序调用卸载方法。
类型
AbortRequestedOptions
属性
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
operationRequestId
number
要中止的请求的 ID。
-
requestId
number
此请求的唯一标识符。
Action
属性
-
id
string
操作的标识符。任意字符串或用于常用操作的
CommonActionId
。 -
title
字符串(可选)
操作的标题。对于常见操作,可以忽略该属性。
AddWatcherRequestedOptions
属性
-
entryPath
string
要观察的条目的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
recursive
boolean
观察是否应以递归方式包含所有子条目。仅适用于目录。
-
requestId
number
此请求的唯一标识符。
Change
属性
-
changeType
对条目进行的更改的类型。
-
cloudFileInfo
CloudFileInfo(可选)
Chrome 125 及更高版本文件的相关信息(如果由云端文件系统提供支持)。
-
entryPath
string
已更改条目的路径。
ChangeType
在观察到的目录中检测到的更改的类型。
枚举
CloseFileRequestedOptions
属性
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
openRequestId
number
用于打开文件的请求 ID。
-
requestId
number
此请求的唯一标识符。
CloudFileInfo
属性
-
versionTag
字符串(可选)
表示文件版本的标记。
CloudIdentifier
属性
-
id
string
指定文件/目录的提供程序标识符。
-
providerName
string
云端存储空间服务的标识符(例如“drive.google.com”)。
CommonActionId
常用操作列表。"SHARE"
用于与他人共享文件。"SAVE_FOR_OFFLINE"
- 用于固定(保存以供离线访问)。"OFFLINE_NOT_NECESSARY"
,用于通知不再需要存储文件以供离线访问。供 onGetActionsRequested
和 onExecuteActionRequested
使用。
枚举
"OFFLINE_NOT_NECESSARY"
ConfigureRequestedOptions
属性
-
fileSystemId
string
要配置的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
CopyEntryRequestedOptions
属性
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
-
sourcePath
string
要复制的条目的来源路径。
-
targetPath
string
复制操作的目标路径。
CreateDirectoryRequestedOptions
属性
-
directoryPath
string
要创建的目录的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
recursive
boolean
操作是否递归(仅适用于目录)。
-
requestId
number
此请求的唯一标识符。
CreateFileRequestedOptions
属性
-
filePath
string
要创建的文件的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
DeleteEntryRequestedOptions
属性
-
entryPath
string
要删除的条目的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
recursive
boolean
操作是否递归(仅适用于目录)。
-
requestId
number
此请求的唯一标识符。
EntryMetadata
属性
-
cloudFileInfo
CloudFileInfo(可选)
Chrome 125 及更高版本用于标识底层云端文件系统中的特定文件的信息。如果在
options
中发出请求,并且文件由云端存储空间提供支持,则必须提供。 -
cloudIdentifier
CloudIdentifier(可选)
Chrome 117 及更高版本此条目的 Cloud Storage 表示形式。如果在
options
中发出请求,并且文件由云端存储空间提供支持,则必须提供。对于未由云端存储空间支持的本地文件,在请求时应保持未定义状态。 -
isDirectory
布尔值 选填
如果是目录,则为 true。如果
options
中要求提供,则必须提供。 -
mimeType
字符串(可选)
条目的 MIME 类型。始终可选,但如果在
options
中发出请求,则应提供。 -
modificationTime
日期(可选)
此条目的上次修改时间。如果
options
中要求提供,则必须提供。 -
name
字符串(可选)
此条目的名称(而非完整路径名)。不得包含“/”。对于 root,它必须为空。如果
options
中要求提供,则必须提供。 -
大小
数字可选
文件大小(以字节为单位)。如果
options
中要求提供,则必须提供。 -
缩略图
字符串(可选)
以 PNG、JPEG 或 WEBP 格式的数据 URI 缩略图图片,大小不超过 32 KB。可选,但只有在
onGetMetadataRequested
事件明确请求时才能提供。
ExecuteActionRequestedOptions
属性
-
actionId
string
要执行的操作的标识符。
-
entryPaths
字符串[]
Chrome 47 及更高版本要用于操作的条目的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
FileSystemInfo
属性
-
displayName
string
直观易懂的文件系统名称。
-
fileSystemId
string
文件系统的标识符。
-
openedFiles
当前打开的文件的列表。
-
openedFilesLimit
number
一次可以打开的文件数量上限。如果为 0,则表示无限制。
-
supportsNotifyTag
布尔值 选填
Chrome 45 及更高版本文件系统是否支持用于观察目录的
tag
字段。 -
观察者
Watcher[]
Chrome 45 及更高版本观察者列表。
-
可写入
boolean
文件系统是否支持可能会更改文件系统内容的操作(例如创建、删除或写入文件)。
GetActionsRequestedOptions
属性
-
entryPaths
字符串[]
Chrome 47 及更高版本操作列表的条目路径列表。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
GetMetadataRequestedOptions
属性
-
cloudFileInfo
boolean
Chrome 125 及更高版本如果请求
cloudFileInfo
值,则设置为true
。 -
cloudIdentifier
boolean
Chrome 117 及更高版本如果请求
cloudIdentifier
值,则设置为true
。 -
entryPath
string
要获取其元数据的条目的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
isDirectory
boolean
Chrome 49 及更高版本如果请求
is_directory
值,则设置为true
。 -
mimeType
boolean
Chrome 49 及更高版本如果请求
mimeType
值,则设为true
。 -
modificationTime
boolean
Chrome 49 及更高版本如果请求
modificationTime
值,则设置为true
。 -
name
boolean
Chrome 49 及更高版本如果请求
name
值,则设为true
。 -
requestId
number
此请求的唯一标识符。
-
大小
boolean
Chrome 49 及更高版本如果请求
size
值,则设置为true
。 -
缩略图
boolean
如果请求
thumbnail
值,则设为true
。
MountOptions
属性
-
displayName
string
直观易懂的文件系统名称。
-
fileSystemId
string
文件系统的字符串标识符。每个扩展程序必须是唯一的。
-
openedFilesLimit
数字可选
一次可以打开的文件数量上限。如果未指定,或为 0,则表示无限制。
-
持久性
布尔值 选填
Chrome 64 及更高版本框架是否应该在下次登录会话时恢复文件系统。默认情况下为 true。
-
supportsNotifyTag
布尔值 选填
Chrome 45 及更高版本文件系统是否支持观察目录的
tag
字段。 -
可写入
布尔值 选填
文件系统是否支持可能会更改文件系统内容的操作(例如创建、删除或写入文件)。
MoveEntryRequestedOptions
属性
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
-
sourcePath
string
要移动到新位置的条目的源路径。
-
targetPath
string
复制操作的目标路径。
NotifyOptions
属性
-
changeType
观察到的条目发生的更改类型。如果为 DELETED,则观察到的条目将自动从观察到的条目列表中移除。
-
更改
更改[] 可选
对被观察目录中的条目(包括条目本身)的更改列表
-
fileSystemId
string
与此更改相关的文件系统的标识符。
-
observedPath
string
观察到的条目的路径。
-
recursive
boolean
观测到的条目的模式。
-
标记
字符串(可选)
通知的标签。如果使用
supportsNotifyTag
选项装载文件系统,则为必需。请注意,即使在系统关闭时,也必须提供此标记,以提供与更改有关的通知。
OpenedFile
属性
-
filePath
string
已打开文件的路径。
-
模式
文件是否打开以进行读取或写入。
-
openRequestId
number
连续读取/写入和关闭请求要使用的请求 ID。
OpenFileMode
打开文件的模式。由 onOpenFileRequested
使用。
枚举
OpenFileRequestedOptions
属性
-
filePath
string
要打开的文件的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
模式
指定文件将用于读取还是写入。
-
requestId
number
连续读取/写入和关闭请求将使用的请求 ID。
ProviderError
通过提供扩展程序来响应请求以及调用该 API 的方法出错时所使用的错误代码。如需成功,必须使用 "OK"
。
枚举
"NOT_A_FILE"
ReadDirectoryRequestedOptions
属性
-
directoryPath
string
请求内容的目录的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
isDirectory
boolean
Chrome 49 及更高版本如果请求
is_directory
值,则设置为true
。 -
mimeType
boolean
Chrome 49 及更高版本如果请求
mimeType
值,则设置为true
。 -
modificationTime
boolean
Chrome 49 及更高版本如果请求
modificationTime
值,则设为true
。 -
name
boolean
Chrome 49 及更高版本如果请求
name
值,则设置为true
。 -
requestId
number
此请求的唯一标识符。
-
大小
boolean
Chrome 49 及更高版本如果请求
size
值,则设为true
。 -
缩略图
boolean
Chrome 49 及更高版本如果请求
thumbnail
值,则设为true
。
ReadFileRequestedOptions
属性
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
length
number
要返回的字节数。
-
offset
number
在文件中开始读取的位置(以字节为单位)。
-
openRequestId
number
用于打开文件的请求 ID。
-
requestId
number
此请求的唯一标识符。
RemoveWatcherRequestedOptions
属性
-
entryPath
string
受监控条目的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
recursive
boolean
Watcher 的模式。
-
requestId
number
此请求的唯一标识符。
TruncateRequestedOptions
属性
-
filePath
string
要截断的文件的路径。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
length
number
操作完成后要保留的字节数。
-
requestId
number
此请求的唯一标识符。
UnmountOptions
属性
-
fileSystemId
string
要卸载的文件系统的标识符。
UnmountRequestedOptions
属性
-
fileSystemId
string
要卸载的文件系统的标识符。
-
requestId
number
此请求的唯一标识符。
Watcher
属性
-
entryPath
string
要观察的条目的路径。
-
lastTag
字符串(可选)
监视器的上次通知使用的标记。
-
recursive
boolean
监控是否应该以递归方式包含所有子条目。仅适用于目录。
WriteFileRequestedOptions
属性
-
data
ArrayBuffer
要写入文件的字节缓冲区。
-
fileSystemId
string
与此操作相关的文件系统的标识符。
-
offset
number
在文件中开始写入字节的位置(以字节为单位)。
-
openRequestId
number
用于打开文件的请求 ID。
-
requestId
number
此请求的唯一标识符。
方法
get()
chrome.fileSystemProvider.get(
fileSystemId: string,
callback?: function,
)
返回具有传递的 fileSystemId
的文件系统的相关信息。
参数
-
fileSystemId
string
-
callback
函数(可选)
callback
参数如下所示:(fileSystem: FileSystemInfo) => void
-
fileSystem
-
返回
-
Promise<FileSystemInfo>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
getAll()
chrome.fileSystemProvider.getAll(
callback?: function,
)
返回该扩展程序装载的所有文件系统。
参数
-
callback
函数(可选)
callback
参数如下所示:(fileSystems: FileSystemInfo[]) => void
-
fileSystems
-
返回
-
Promise<FileSystemInfo[]>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
mount()
chrome.fileSystemProvider.mount(
options: MountOptions,
callback?: function,
)
使用指定的 fileSystemId
和 displayName
装载文件系统。displayName
将显示在“文件”应用的左侧面板中。displayName
可以包含包括“/”在内的任何字符,但不能为空字符串。displayName
必须是描述性的,但不必是唯一的。fileSystemId
不得为空字符串。
必须正确设置 source
选项,具体取决于要装载的文件系统的类型。
如果发生错误,系统会使用相应的错误代码设置 runtime.lastError
。
参数
-
选项
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
notify()
chrome.fileSystemProvider.notify(
options: NotifyOptions,
callback?: function,
)
在 recursive
模式下,在 observedPath
处通知受监控目录中的更改。如果文件系统是通过 supportsNotifyTag
装载的,则必须提供 tag
,并且始终报告自上次通知以来的所有更改,即使系统已关闭也是如此。最后一个标记可通过 getAll
获取。
如需使用,必须将 file_system_provider.notify
清单选项设置为 true。
tag
的值可以是每次调用具有唯一性的任意字符串,因此可以识别上次注册的通知。例如,如果提供的扩展程序在重新启动后启动,并且上次注册的通知的标记等于“123”,则对于自标记为“123”的更改以来发生的所有更改,它应该调用 notify
。它不能是空字符串。
并非所有提供程序都能够提供标签,但如果文件系统有更新日志,则该标签可以是更改编号或修订版本号。
请注意,如果移除父级目录,则所有后代条目也会被移除,并且如果它们被观察,则 API 必须收到通知。此外,如果重命名目录,那么实际上会移除所有后代条目,因为其原始路径下不再有条目。
如果发生错误,系统将设置 runtime.lastError
并生成相应的错误代码。
参数
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
unmount()
chrome.fileSystemProvider.unmount(
options: UnmountOptions,
callback?: function,
)
卸载具有给定 fileSystemId
的文件系统。它必须在调用 onUnmountRequested
后调用。此外,提供扩展程序的扩展程序可以在未得到请求的情况下决定执行卸载操作(例如,在连接丢失或出现文件错误时)。
如果发生错误,系统会使用相应的错误代码设置 runtime.lastError
。
参数
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
活动
onAbortRequested
chrome.fileSystemProvider.onAbortRequested.addListener(
callback: function,
)
请求通过 operationRequestId
取消某项操作时引发。使用 operationRequestId
执行的操作必须立即停止,并且此中止请求的 successCallback
已执行。如果取消失败,必须调用 errorCallback
。请注意,不得调用已中止操作的回调,因为此类回调将被忽略。尽管调用了 errorCallback
,但请求可能会被强制取消。
参数
-
callback
功能
callback
参数如下所示:(options: AbortRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onAddWatcherRequested
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
callback: function,
)
在请求设置新的目录监视器时引发。如果发生错误,则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: AddWatcherRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onCloseFileRequested
chrome.fileSystemProvider.onCloseFileRequested.addListener(
callback: function,
)
打开之前使用 openRequestId
打开的文件时被请求关闭时引发。
参数
-
callback
功能
callback
参数如下所示:(options: CloseFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onConfigureRequested
chrome.fileSystemProvider.onConfigureRequested.addListener(
callback: function,
)
请求显示 fileSystemId
的配置对话框时引发。如果已处理,则必须将 file_system_provider.configurable
Manfiest 选项设置为 true。
参数
-
callback
功能
callback
参数如下所示:(options: ConfigureRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onCopyEntryRequested
chrome.fileSystemProvider.onCopyEntryRequested.addListener(
callback: function,
)
请求复制条目时引发(如果目录为递归,则引发)。如果发生错误,则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: CopyEntryRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onCreateDirectoryRequested
chrome.fileSystemProvider.onCreateDirectoryRequested.addListener(
callback: function,
)
请求创建目录时引发。如果目标目录已存在,操作必须失败并显示 EXISTS 错误。如果 recursive
为 true,则必须创建目录路径上所有缺失的目录。
参数
-
callback
功能
callback
参数如下所示:(options: CreateDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onCreateFileRequested
chrome.fileSystemProvider.onCreateFileRequested.addListener(
callback: function,
)
请求创建文件时引发。如果该文件已存在,必须使用 "EXISTS"
错误代码调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: CreateFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onDeleteEntryRequested
chrome.fileSystemProvider.onDeleteEntryRequested.addListener(
callback: function,
)
请求删除条目时引发。如果 recursive
为 true,并且条目是一个目录,则其中的所有条目也必须以递归方式删除。
参数
-
callback
功能
callback
参数如下所示:(options: DeleteEntryRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onExecuteActionRequested
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
callback: function,
)
在请求一组文件或目录的操作时引发。操作完成后,必须调用 successCallback
。出现错误时,必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: ExecuteActionRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onGetActionsRequested
chrome.fileSystemProvider.onGetActionsRequested.addListener(
callback: function,
)
在请求针对 entryPaths
中的一组文件或目录的操作列表时引发。所有返回的操作都必须适用于每个条目。如果没有此类操作,应返回空数组。这些操作必须通过 successCallback
调用返回。如果发生错误,必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: GetActionsRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:(actions: Action[]) => void
-
操作
动作[]
-
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onGetMetadataRequested
chrome.fileSystemProvider.onGetMetadataRequested.addListener(
callback: function,
)
在请求文件或目录(位于 entryPath
中)的元数据时引发。元数据必须通过 successCallback
调用返回。如果发生错误,必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: GetMetadataRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:(metadata: EntryMetadata) => void
-
元数据
-
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onMountRequested
chrome.fileSystemProvider.onMountRequested.addListener(
callback: function,
)
请求显示用于装载新文件系统的对话框时引发。如果扩展程序/应用是文件处理程序,则不应处理此事件。而是应处理 app.runtime.onLaunched
,以便在文件打开时装载新的文件系统。对于多个装载,必须将 file_system_provider.multiple_mounts
清单选项设置为 true。
参数
-
callback
功能
callback
参数如下所示:(successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
-
onMoveEntryRequested
chrome.fileSystemProvider.onMoveEntryRequested.addListener(
callback: function,
)
请求移动条目(如果目录时递归)时引发。如果发生错误,则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: MoveEntryRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onOpenFileRequested
chrome.fileSystemProvider.onOpenFileRequested.addListener(
callback: function,
)
请求打开位于 filePath
的文件时引发。如果该文件不存在,则操作必须失败。可以使用 MountOptions
指定一次打开的文件数量上限。
参数
-
callback
功能
callback
参数如下所示:(options: OpenFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:(metadata?: EntryMetadata) => void
-
元数据
-
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onReadDirectoryRequested
chrome.fileSystemProvider.onReadDirectoryRequested.addListener(
callback: function,
)
在请求 directoryPath
上的目录的内容时引发。必须通过多次调用 successCallback
分块返回结果。如果发生错误,必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: ReadDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:(entries: EntryMetadata[], hasMore: boolean) => void
-
entries
-
hasMore
boolean
-
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onReadFileRequested
chrome.fileSystemProvider.onReadFileRequested.addListener(
callback: function,
)
请求读取之前使用 openRequestId
打开的文件的内容时引发。必须通过多次调用 successCallback
分块返回结果。如果发生错误,必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: ReadFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:(data: ArrayBuffer, hasMore: boolean) => void
-
data
ArrayBuffer
-
hasMore
boolean
-
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onRemoveWatcherRequested
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
callback: function,
)
在应移除观察器时引发。如果发生错误,则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: RemoveWatcherRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onTruncateRequested
chrome.fileSystemProvider.onTruncateRequested.addListener(
callback: function,
)
请求截断文件至所需长度时引发。如果发生错误,则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: TruncateRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onUnmountRequested
chrome.fileSystemProvider.onUnmountRequested.addListener(
callback: function,
)
卸载带有 fileSystemId
标识符的文件系统时引发。在响应中,unmount
API 方法必须与 successCallback
一起调用。如果无法卸载(例如,由于待处理的操作),则必须调用 errorCallback
。
参数
-
callback
功能
callback
参数如下所示:(options: UnmountRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-
onWriteFileRequested
chrome.fileSystemProvider.onWriteFileRequested.addListener(
callback: function,
)
请求将内容写入之前使用 openRequestId
打开的文件时引发。
参数
-
callback
功能
callback
参数如下所示:(options: WriteFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
successCallback
功能
successCallback
参数如下所示:() => void
-
errorCallback
功能
errorCallback
参数如下所示:(error: ProviderError) => void
-
error
-