chrome.fileSystemProvider

Mô tả

Sử dụng API chrome.fileSystemProvider để tạo hệ thống tệp. Bạn có thể truy cập vào hệ thống tệp này từ trình quản lý tệp trên ChromeOS.

Quyền

fileSystemProvider

Phạm vi cung cấp

Chỉ dành cho ChromeOS

Bạn phải khai báo quyền và phần "fileSystemProvider" trong tệp kê khai tiện ích để sử dụng File System Provider API. Ví dụ:

{
  "name": "My extension",
  ...
  "permissions": [
    "fileSystemProvider"
  ],
  ...
  "file_system_provider_capabilities": {
    "configurable": true,
    "watchable": false,
    "multiple_mounts": true,
    "source": "network"
  },
  ...
}

Bạn phải khai báo phần file_system_provider như sau:

configurable (boolean) – không bắt buộc
Có hỗ trợ việc định cấu hình thông qua onConfigureRequested hay không. Theo mặc định: false.
multiple_mounts (boolean) – không bắt buộc
Ứng dụng có hỗ trợ nhiều (nhiều hơn một) hệ thống tệp được gắn hay không. Theo mặc định: false.
watchable (boolean) – không bắt buộc
Có hỗ trợ việc thiết lập người theo dõi và thông báo về các thay đổi hay không. Theo mặc định: false.
source (enum của "file", "device" hoặc "network") – bắt buộc
Nguồn dữ liệu cho hệ thống tệp được gắn.

Ứng dụng Files sử dụng thông tin trên để hiển thị các phần tử liên quan trên giao diện người dùng một cách phù hợp. Ví dụ: nếu configurable được đặt thành true, thì một mục trình đơn để định cấu hình âm lượng sẽ được hiển thị. Tương tự, nếu multiple_mounts được đặt thành true, thì ứng dụng Files sẽ cho phép thêm nhiều điểm gắn kết từ giao diện người dùng. Nếu watchablefalse, thì nút làm mới sẽ được kết xuất. Xin lưu ý rằng nếu có thể, bạn nên thêm hỗ trợ cho các trình theo dõi để những thay đổi trên hệ thống tệp có thể được phản ánh ngay lập tức và tự động.

Tổng quan

File System Provider API cho phép các tiện ích hỗ trợ hệ thống tệp ảo có trong trình quản lý tệp trên ChromeOS. Các trường hợp sử dụng bao gồm giải nén tệp lưu trữ và truy cập vào các tệp trong một dịch vụ đám mây khác ngoài Drive.

Gắn hệ thống tệp

Việc cung cấp các tiện ích có thể cung cấp nội dung hệ thống tệp từ một nguồn bên ngoài (chẳng hạn như máy chủ từ xa hoặc thiết bị USB) hoặc sử dụng tệp cục bộ (chẳng hạn như tệp lưu trữ) làm đầu vào.

Để ghi các hệ thống tệp là trình xử lý tệp (nguồn là "file"), nhà cung cấp phải là một ứng dụng đóng gói, vì tiện ích không có sự kiện onLaunched.

Nếu nguồn là mạng hoặc thiết bị, thì hệ thống tệp sẽ được gắn khi sự kiện onMountRequested được gọi.

Nguồn của dữ liệu hệ thống tệp Điểm mục nhập
"file" Chỉ dành cho các ứng dụng đóng gói.
"device" hoặc "network" onMountRequested

Định cấu hình hệ thống tệp

Bạn có thể định cấu hình các hệ thống tệp đã cung cấp sau khi được gắn thông qua sự kiện onConfigureRequested. Điều này đặc biệt hữu ích đối với những hệ thống tệp cung cấp nội dung qua mạng để thiết lập thông tin đăng nhập phù hợp. Bạn không bắt buộc phải xử lý sự kiện này.

Vòng đời

Chrome sẽ ghi nhớ các hệ thống tệp đã được gắn và tự động gắn lại sau khi khởi động lại. Do đó, sau khi một tiện ích cung cấp kết nối một hệ thống tệp, hệ thống tệp đó sẽ vẫn kết nối cho đến khi tiện ích được huỷ tải hoặc tiện ích gọi phương thức huỷ kết nối.

Loại

AbortRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • operationRequestId

    số

    Mã nhận dạng của yêu cầu cần huỷ.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

Action

Chrome 45 trở lên

Thuộc tính

  • id

    chuỗi

    Giá trị nhận dạng của hành động. Mọi chuỗi hoặc CommonActionId cho các thao tác thông thường.

  • tiêu đề

    chuỗi không bắt buộc

    Tiêu đề của thao tác. Bạn có thể bỏ qua thông báo này đối với các thao tác thông thường.

AddWatcherRequestedOptions

Thuộc tính

  • entryPath

    chuỗi

    Đường dẫn của mục cần được theo dõi.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • đệ quy

    boolean

    Liệu việc quan sát có nên bao gồm tất cả các mục con một cách đệ quy hay không. Giá trị này chỉ có thể là true đối với các thư mục.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

Change

Thuộc tính

  • changeType

    Loại thay đổi đã xảy ra đối với mục nhập.

  • cloudFileInfo

    CloudFileInfo không bắt buộc

    Chrome 125 trở lên

    Thông tin liên quan đến tệp nếu được sao lưu bằng một hệ thống tệp trên đám mây.

  • entryPath

    chuỗi

    Đường dẫn của mục đã thay đổi.

ChangeType

Loại thay đổi được phát hiện trên thư mục được theo dõi.

Enum

"CHANGED"

"ĐÃ XOÁ"

CloseFileRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • openRequestId

    số

    Mã yêu cầu dùng để mở tệp.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

CloudFileInfo

Chrome 125 trở lên

Thuộc tính

  • versionTag

    chuỗi không bắt buộc

    Một thẻ đại diện cho phiên bản của tệp.

CloudIdentifier

Chrome 117 trở lên

Thuộc tính

  • id

    chuỗi

    Giá trị nhận dạng của nhà cung cấp cho tệp/thư mục đã cho.

  • providerName

    chuỗi

    Giá trị nhận dạng cho nhà cung cấp dịch vụ lưu trữ đám mây (ví dụ: "drive.google.com").

CommonActionId

Chrome 45 trở lên

Danh sách các thao tác thường dùng. "SHARE" dùng để chia sẻ tệp với người khác. "SAVE_FOR_OFFLINE" để ghim (lưu để sử dụng khi không có mạng). "OFFLINE_NOT_NECESSARY" để thông báo rằng bạn không cần lưu trữ tệp để truy cập khi không có mạng nữa. Được dùng bởi onGetActionsRequestedonExecuteActionRequested.

Enum

"SAVE_FOR_OFFLINE"

"OFFLINE_NOT_NECESSARY"

"CHIA SẺ"

ConfigureRequestedOptions

Chrome 44 trở lên

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp cần được định cấu hình.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

CopyEntryRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

  • sourcePath

    chuỗi

    Đường dẫn nguồn của mục cần sao chép.

  • targetPath

    chuỗi

    Đường dẫn đích cho thao tác sao chép.

CreateDirectoryRequestedOptions

Thuộc tính

  • directoryPath

    chuỗi

    Đường dẫn của thư mục cần tạo.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • đệ quy

    boolean

    Thao tác này có đệ quy hay không (chỉ dành cho thư mục).

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

CreateFileRequestedOptions

Thuộc tính

  • filePath

    chuỗi

    Đường dẫn của tệp cần tạo.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

DeleteEntryRequestedOptions

Thuộc tính

  • entryPath

    chuỗi

    Đường dẫn của mục cần xoá.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • đệ quy

    boolean

    Thao tác này có đệ quy hay không (chỉ dành cho thư mục).

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

EntryMetadata

Thuộc tính

  • cloudFileInfo

    CloudFileInfo không bắt buộc

    Chrome 125 trở lên

    Thông tin xác định một tệp cụ thể trong hệ thống tệp trên đám mây cơ bản. Bạn phải cung cấp nếu được yêu cầu trong options và tệp được sao lưu bằng bộ nhớ đám mây.

  • cloudIdentifier

    CloudIdentifier không bắt buộc

    Chrome 117 trở lên

    Biểu thị bộ nhớ trên đám mây của mục này. Bạn phải cung cấp nếu được yêu cầu trong options và tệp được sao lưu bằng bộ nhớ đám mây. Đối với các tệp cục bộ không được sao lưu bằng bộ nhớ trên đám mây, bạn nên xác định khi được yêu cầu.

  • isDirectory

    boolean không bắt buộc

    True nếu đó là một thư mục. Bạn phải cung cấp nếu được yêu cầu trong options.

  • mimeType

    chuỗi không bắt buộc

    Loại MIME cho mục nhập. Luôn không bắt buộc, nhưng bạn nên cung cấp nếu được yêu cầu trong options.

  • modificationTime

    Ngày không bắt buộc

    Thời gian sửa đổi lần cuối của mục này. Bạn phải cung cấp nếu được yêu cầu trong options.

  • tên

    chuỗi không bắt buộc

    Tên của mục này (không phải tên đường dẫn đầy đủ). Không được chứa "/". Đối với thư mục gốc, bạn phải để trống. Bạn phải cung cấp nếu được yêu cầu trong options.

  • size

    number không bắt buộc

    Kích thước tệp tính bằng byte. Bạn phải cung cấp nếu được yêu cầu trong options.

  • hình thu nhỏ

    chuỗi không bắt buộc

    Hình thu nhỏ dưới dạng URI dữ liệu ở định dạng PNG, JPEG hoặc WEBP, có kích thước tối đa là 32 KB. Không bắt buộc, nhưng bạn chỉ có thể cung cấp khi được sự kiện onGetMetadataRequested yêu cầu một cách rõ ràng.

ExecuteActionRequestedOptions

Chrome 45 trở lên

Thuộc tính

  • actionId

    chuỗi

    Giá trị nhận dạng của hành động cần thực thi.

  • entryPaths

    string[]

    Chrome 47 trở lên

    Tập hợp các đường dẫn của các mục nhập sẽ được dùng cho thao tác.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

FileSystemInfo

Thuộc tính

  • Tên hiển thị

    chuỗi

    Tên dễ đọc của hệ thống tệp.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp.

  • openedFiles

    Danh sách các tệp hiện đang mở.

  • openedFilesLimit

    số

    Số lượng tệp tối đa có thể mở cùng một lúc. Nếu là 0 thì không bị giới hạn.

  • supportsNotifyTag

    boolean không bắt buộc

    Chrome 45 trở lên

    Hệ thống tệp có hỗ trợ trường tag để theo dõi các thư mục hay không.

  • người xem
    Chrome 45 trở lên

    Danh sách người xem.

  • có thể ghi

    boolean

    Hệ thống tệp có hỗ trợ các thao tác có thể thay đổi nội dung của hệ thống tệp hay không (chẳng hạn như tạo, xoá hoặc ghi vào tệp).

GetActionsRequestedOptions

Chrome 45 trở lên

Thuộc tính

  • entryPaths

    string[]

    Chrome 47 trở lên

    Danh sách đường dẫn của các mục trong danh sách thao tác.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

GetMetadataRequestedOptions

Thuộc tính

  • cloudFileInfo

    boolean

    Chrome 125 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị cloudFileInfo.

  • cloudIdentifier

    boolean

    Chrome 117 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị cloudIdentifier.

  • entryPath

    chuỗi

    Đường dẫn của mục nhập để tìm nạp siêu dữ liệu.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • isDirectory

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị is_directory.

  • mimeType

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị mimeType.

  • modificationTime

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị modificationTime.

  • tên

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị name.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

  • size

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị size.

  • hình thu nhỏ

    boolean

    Đặt thành true nếu bạn yêu cầu giá trị thumbnail.

MountOptions

Thuộc tính

  • Tên hiển thị

    chuỗi

    Tên dễ đọc của hệ thống tệp.

  • fileSystemId

    chuỗi

    Chuỗi nhận dạng của hệ thống tệp. Mỗi tiện ích phải có một mã nhận dạng riêng biệt.

  • openedFilesLimit

    number không bắt buộc

    Số lượng tệp tối đa có thể mở cùng một lúc. Nếu bạn không chỉ định hoặc chỉ định giá trị 0, thì số lượng sẽ không bị giới hạn.

  • liên tục

    boolean không bắt buộc

    Chrome 64 trở lên

    Liệu khung có nên tiếp tục hệ thống tệp ở phiên đăng nhập tiếp theo hay không. Đúng theo mặc định.

  • supportsNotifyTag

    boolean không bắt buộc

    Chrome 45 trở lên

    Hệ thống tệp có hỗ trợ trường tag cho các thư mục được theo dõi hay không.

  • có thể ghi

    boolean không bắt buộc

    Hệ thống tệp có hỗ trợ các thao tác có thể thay đổi nội dung của hệ thống tệp hay không (chẳng hạn như tạo, xoá hoặc ghi vào tệp).

MoveEntryRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

  • sourcePath

    chuỗi

    Đường dẫn nguồn của mục cần di chuyển đến một vị trí mới.

  • targetPath

    chuỗi

    Đường dẫn đích cho thao tác sao chép.

NotifyOptions

Thuộc tính

  • changeType

    Loại thay đổi đã xảy ra đối với mục được quan sát. Nếu là DELETED, thì mục được quan sát sẽ tự động bị xoá khỏi danh sách các mục được quan sát.

  • các thay đổi

    Change[] không bắt buộc

    Danh sách các thay đổi đối với các mục trong thư mục được theo dõi (bao gồm cả chính mục đó)

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thay đổi này.

  • observedPath

    chuỗi

    Đường dẫn của mục được quan sát.

  • đệ quy

    boolean

    Chế độ của mục nhập được quan sát.

  • thẻ

    chuỗi không bắt buộc

    Thẻ cho thông báo. Bắt buộc nếu hệ thống tệp được gắn bằng tuỳ chọn supportsNotifyTag. Xin lưu ý rằng cờ này là cần thiết để cung cấp thông báo về những thay đổi đã xảy ra ngay cả khi hệ thống đã tắt.

OpenedFile

Thuộc tính

  • filePath

    chuỗi

    Đường dẫn của tệp đã mở.

  • chế độ

    Tệp đã được mở để đọc hay ghi.

  • openRequestId

    số

    Mã yêu cầu mà các yêu cầu đọc/ghi và đóng liên tiếp sẽ sử dụng.

OpenFileMode

Chế độ mở tệp. Được dùng bởi onOpenFileRequested.

Enum

"READ"

"WRITE"

OpenFileRequestedOptions

Thuộc tính

  • filePath

    chuỗi

    Đường dẫn của tệp cần mở.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • chế độ

    Liệu tệp sẽ được dùng để đọc hay ghi.

  • requestId

    số

    Mã yêu cầu sẽ được dùng cho các yêu cầu đọc/ghi và đóng liên tiếp.

ProviderError

Mã lỗi được dùng bằng cách cung cấp các tiện ích để phản hồi các yêu cầu cũng như trong trường hợp xảy ra lỗi khi gọi các phương thức của API. Để thành công, bạn phải sử dụng "OK".

Enum

"OK"

"FAILED"

"IN_USE"

"EXISTS"

"NOT_FOUND"

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"NO_SPACE"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

"BẢO MẬT"

"ABORT"

"NOT_A_FILE"

"NOT_EMPTY"

"INVALID_URL"

"IO"

ReadDirectoryRequestedOptions

Thuộc tính

  • directoryPath

    chuỗi

    Đường dẫn của thư mục có nội dung được yêu cầu.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • isDirectory

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị is_directory.

  • mimeType

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị mimeType.

  • modificationTime

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị modificationTime.

  • tên

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị name.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

  • size

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị size.

  • hình thu nhỏ

    boolean

    Chrome 49 trở lên

    Đặt thành true nếu bạn yêu cầu giá trị thumbnail.

ReadFileRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • chiều dài

    số

    Số byte cần trả về.

  • bù trừ

    số

    Vị trí trong tệp (tính bằng byte) để bắt đầu đọc.

  • openRequestId

    số

    Mã yêu cầu dùng để mở tệp.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

RemoveWatcherRequestedOptions

Thuộc tính

  • entryPath

    chuỗi

    Đường dẫn của mục được theo dõi.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • đệ quy

    boolean

    Chế độ của trình theo dõi.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

TruncateRequestedOptions

Thuộc tính

  • filePath

    chuỗi

    Đường dẫn của tệp cần được rút gọn.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • chiều dài

    số

    Số byte cần giữ lại sau khi thao tác hoàn tất.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

UnmountOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp cần huỷ gắn kết.

UnmountRequestedOptions

Thuộc tính

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp cần huỷ gắn kết.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

Watcher

Thuộc tính

  • entryPath

    chuỗi

    Đường dẫn của mục nhập đang được theo dõi.

  • lastTag

    chuỗi không bắt buộc

    Thẻ được thông báo gần đây nhất dùng cho người xem.

  • đệ quy

    boolean

    Liệu việc theo dõi có bao gồm tất cả các mục con một cách đệ quy hay không. Giá trị này chỉ có thể là true đối với các thư mục.

WriteFileRequestedOptions

Thuộc tính

  • khác

    ArrayBuffer

    Vùng đệm của các byte cần được ghi vào tệp.

  • fileSystemId

    chuỗi

    Giá trị nhận dạng của hệ thống tệp liên quan đến thao tác này.

  • bù trừ

    số

    Vị trí trong tệp (tính bằng byte) để bắt đầu ghi các byte.

  • openRequestId

    số

    Mã yêu cầu dùng để mở tệp.

  • requestId

    số

    Giá trị nhận dạng duy nhất của yêu cầu này.

Phương thức

get()

chrome.fileSystemProvider.get(
  fileSystemId: string,
)
: Promise<FileSystemInfo>

Trả về thông tin về một hệ thống tệp có fileSystemId đã truyền.

Thông số

  • fileSystemId

    chuỗi

Giá trị trả về

getAll()

chrome.fileSystemProvider.getAll(): Promise<FileSystemInfo[]>

Trả về tất cả các hệ thống tệp do tiện ích gắn kết.

Giá trị trả về

mount()

chrome.fileSystemProvider.mount(
  options: MountOptions,
)
: Promise<void>

Gắn một hệ thống tệp bằng fileSystemIddisplayName đã cho. displayName sẽ xuất hiện ở bảng điều khiển bên trái của ứng dụng Files. displayName có thể chứa mọi ký tự, kể cả "/", nhưng không được là một chuỗi trống. displayName phải mang tính mô tả nhưng không nhất thiết phải là duy nhất. fileSystemId không được là một chuỗi trống.

Tuỳ thuộc vào loại hệ thống tệp đang được gắn, bạn phải đặt lựa chọn source một cách thích hợp.

Trong trường hợp xảy ra lỗi, runtime.lastError sẽ được đặt bằng mã lỗi tương ứng.

Thông số

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

notify()

Chrome 45 trở lên
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
)
: Promise<void>

Thông báo về những thay đổi trong thư mục được theo dõi tại observedPath ở chế độ recursive. Nếu hệ thống tệp được gắn bằng supportsNotifyTag, thì bạn phải cung cấp tag và mọi thay đổi kể từ thông báo gần đây nhất luôn được báo cáo, ngay cả khi hệ thống đã tắt. Bạn có thể lấy thẻ cuối cùng bằng getAll.

Để sử dụng, bạn phải đặt lựa chọn file_system_provider.notify trong tệp kê khai thành true.

Giá trị của tag có thể là bất kỳ chuỗi nào là duy nhất cho mỗi lệnh gọi, vì vậy, bạn có thể xác định thông báo đã đăng ký gần đây nhất. Ví dụ: nếu tiện ích cung cấp bắt đầu sau khi khởi động lại và thẻ của thông báo đã đăng ký gần đây nhất bằng "123", thì tiện ích đó sẽ gọi notify cho tất cả các thay đổi xảy ra kể từ khi thay đổi được gắn thẻ là "123". Không được để trống chuỗi này.

Không phải nhà cung cấp nào cũng có thể cung cấp thẻ, nhưng nếu hệ thống tệp có nhật ký thay đổi, thì thẻ có thể là số thay đổi hoặc số phiên bản.

Xin lưu ý rằng nếu một thư mục mẹ bị xoá, thì tất cả các mục con cũng sẽ bị xoá. Nếu các mục đó được theo dõi, thì API phải được thông báo về việc này. Ngoài ra, nếu một thư mục được đổi tên, thì tất cả các mục con thực tế sẽ bị xoá, vì không còn mục nào theo đường dẫn ban đầu của chúng nữa.

Trong trường hợp xảy ra lỗi, runtime.lastError sẽ được đặt thành mã lỗi tương ứng.

Thông số

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

unmount()

chrome.fileSystemProvider.unmount(
  options: UnmountOptions,
)
: Promise<void>

Huỷ gắn một hệ thống tệp bằng fileSystemId đã cho. Bạn phải gọi phương thức này sau khi gọi onUnmountRequested. Ngoài ra, tiện ích cung cấp có thể quyết định thực hiện thao tác huỷ gắn kết nếu không được yêu cầu (ví dụ: trong trường hợp mất kết nối hoặc xảy ra lỗi tệp).

Trong trường hợp xảy ra lỗi, runtime.lastError sẽ được đặt bằng mã lỗi tương ứng.

Thông số

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

Sự kiện

onAbortRequested

chrome.fileSystemProvider.onAbortRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu huỷ bỏ một thao tác bằng operationRequestId. Thao tác được thực thi bằng operationRequestId phải dừng ngay lập tức và successCallback của yêu cầu huỷ này được thực thi. Nếu không huỷ được, thì bạn phải gọi errorCallback. Xin lưu ý rằng các lệnh gọi lại của thao tác bị huỷ không được gọi vì chúng sẽ bị bỏ qua. Mặc dù gọi errorCallback, yêu cầu có thể bị huỷ bỏ bắt buộc.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: AbortRequestedOptions, successCallback: function, errorCallback: function) => void

onAddWatcherRequested

Chrome 45 trở lên
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu thiết lập một trình theo dõi thư mục mới. Nếu xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: AddWatcherRequestedOptions, successCallback: function, errorCallback: function) => void

onCloseFileRequested

chrome.fileSystemProvider.onCloseFileRequested.addListener(
  callback: function,
)

Được tăng lên khi yêu cầu đóng một tệp đã mở trước đó bằng openRequestId.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: CloseFileRequestedOptions, successCallback: function, errorCallback: function) => void

onConfigureRequested

Chrome 44 trở lên
chrome.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

Được tăng lên khi yêu cầu hiển thị hộp thoại cấu hình cho fileSystemId. Nếu được xử lý, bạn phải đặt tuỳ chọn file_system_provider.configurable trong tệp kê khai thành true.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: ConfigureRequestedOptions, successCallback: function, errorCallback: function) => void

onCopyEntryRequested

chrome.fileSystemProvider.onCopyEntryRequested.addListener(
  callback: function,
)

Được tạo khi có yêu cầu sao chép một mục (đệ quy nếu là một thư mục). Nếu xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: CopyEntryRequestedOptions, successCallback: function, errorCallback: function) => void

onCreateDirectoryRequested

chrome.fileSystemProvider.onCreateDirectoryRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu tạo thư mục. Thao tác phải không thành công với lỗi EXISTS nếu thư mục đích đã tồn tại. Nếu recursive là true, thì tất cả các thư mục bị thiếu trên đường dẫn thư mục phải được tạo.

Thông số

onCreateFileRequested

chrome.fileSystemProvider.onCreateFileRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu tạo tệp. Nếu tệp đã tồn tại, thì bạn phải gọi errorCallback bằng mã lỗi "EXISTS".

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: CreateFileRequestedOptions, successCallback: function, errorCallback: function) => void

onDeleteEntryRequested

chrome.fileSystemProvider.onDeleteEntryRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu xoá một mục. Nếu recursive là true và mục nhập là một thư mục, thì tất cả các mục nhập bên trong cũng phải được xoá đệ quy.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: DeleteEntryRequestedOptions, successCallback: function, errorCallback: function) => void

onExecuteActionRequested

Chrome 48 trở lên
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

Được tăng lên khi thực hiện một thao tác cho một nhóm tệp hoặc thư mục được yêu cầu. Sau khi hoàn tất thao tác, bạn phải gọi successCallback. Khi có lỗi, bạn phải gọi errorCallback.

Thông số

onGetActionsRequested

Chrome 48 trở lên
chrome.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

Được tăng lên khi một danh sách các thao tác cho một nhóm tệp hoặc thư mục tại entryPaths được yêu cầu. Tất cả các thao tác được trả về phải áp dụng cho từng mục. Nếu không có hành động nào như vậy, bạn nên trả về một mảng trống. Bạn phải trả về các thao tác bằng lệnh gọi successCallback. Trong trường hợp xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

onGetMetadataRequested

chrome.fileSystemProvider.onGetMetadataRequested.addListener(
  callback: function,
)

Được tăng lên khi siêu dữ liệu của một tệp hoặc thư mục tại entryPath được yêu cầu. Siêu dữ liệu phải được trả về bằng lệnh gọi successCallback. Trong trường hợp xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

onMountRequested

Chrome 44 trở lên
chrome.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu hiển thị hộp thoại để gắn một hệ thống tệp mới. Nếu tiện ích/ứng dụng là một trình xử lý tệp, thì sự kiện này sẽ không được xử lý. Thay vào đó, bạn nên xử lý app.runtime.onLaunched để gắn hệ thống tệp mới khi mở một tệp. Đối với nhiều lượt gắn kết, bạn phải đặt lựa chọn tệp kê khai file_system_provider.multiple_mounts thành true.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (successCallback: function, errorCallback: function) => void

    • successCallback

      hàm

      Tham số successCallback có dạng như sau:

      () => void

    • errorCallback

      hàm

      Tham số errorCallback có dạng như sau:

      (error: ProviderError) => void

onMoveEntryRequested

chrome.fileSystemProvider.onMoveEntryRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu di chuyển một mục (đệ quy nếu là một thư mục). Nếu xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: MoveEntryRequestedOptions, successCallback: function, errorCallback: function) => void

onOpenFileRequested

chrome.fileSystemProvider.onOpenFileRequested.addListener(
  callback: function,
)

Được tăng lên khi có yêu cầu mở một tệp tại filePath. Nếu tệp không tồn tại, thì thao tác phải không thành công. Bạn có thể chỉ định số lượng tệp tối đa được mở cùng lúc bằng MountOptions.

Thông số

onReadDirectoryRequested

chrome.fileSystemProvider.onReadDirectoryRequested.addListener(
  callback: function,
)

Được tăng lên khi nội dung của một thư mục tại directoryPath được yêu cầu. Bạn phải trả về kết quả theo từng phần bằng cách gọi successCallback nhiều lần. Trong trường hợp xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

onReadFileRequested

chrome.fileSystemProvider.onReadFileRequested.addListener(
  callback: function,
)

Được tăng lên khi yêu cầu đọc nội dung của một tệp đã mở trước đó bằng openRequestId. Bạn phải trả về kết quả theo từng phần bằng cách gọi successCallback nhiều lần. Trong trường hợp xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: ReadFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • successCallback

      hàm

      Tham số successCallback có dạng như sau:

      (data: ArrayBuffer, hasMore: boolean) => void

      • khác

        ArrayBuffer

      • hasMore

        boolean

    • errorCallback

      hàm

      Tham số errorCallback có dạng như sau:

      (error: ProviderError) => void

onRemoveWatcherRequested

Chrome 45 trở lên
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

Được tăng lên khi trình theo dõi cần bị xoá. Nếu xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

onTruncateRequested

chrome.fileSystemProvider.onTruncateRequested.addListener(
  callback: function,
)

Được tạo khi có yêu cầu cắt bớt một tệp đến độ dài mong muốn. Nếu xảy ra lỗi, bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: TruncateRequestedOptions, successCallback: function, errorCallback: function) => void

onUnmountRequested

chrome.fileSystemProvider.onUnmountRequested.addListener(
  callback: function,
)

Được tăng lên khi yêu cầu huỷ gắn hệ thống tệp bằng giá trị nhận dạng fileSystemId. Trong phản hồi, phương thức API unmount phải được gọi cùng với successCallback. Nếu không thể huỷ gắn (ví dụ: do có một thao tác đang chờ xử lý), thì bạn phải gọi errorCallback.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: UnmountRequestedOptions, successCallback: function, errorCallback: function) => void

onWriteFileRequested

chrome.fileSystemProvider.onWriteFileRequested.addListener(
  callback: function,
)

Được tăng lên khi yêu cầu ghi nội dung vào một tệp đã mở trước đó bằng openRequestId.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (options: WriteFileRequestedOptions, successCallback: function, errorCallback: function) => void