chrome.fileSystemProvider

Nội dung mô tả

Sử dụng API chrome.fileSystemProvider để tạo các hệ thống tệp có thể truy cập được từ trình quản lý tệp trên Chrome OS.

Quyền

fileSystemProvider

Phạm vi cung cấp

Chỉ 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
Liệu việc định cấu hình qua onConfigureRequested có được hỗ trợ hay không. Theo mặc định: false.
multiple_mounts (boolean) – không bắt buộc
Liệu hệ thống có hỗ trợ nhiều (nhiều) hệ thống tệp được gắn kết hay không. Theo mặc định: false.
watchable (boolean) – không bắt buộc
Liệu chế độ cài đặt trình theo dõi và thông báo về các thay đổi có được hỗ trợ 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 các hệ thống tệp được gắn kết.

Ứng dụng Files sử dụng thông tin trên để hiển thị các thành phần trên giao diện người dùng có liên quan một cách phù hợp. Ví dụ: nếu bạn đặt configurable thành true (đúng), thì một mục trong trình đơn để định cấu hình ổ đĩa sẽ hiển thị. Tương tự, nếu bạn đặt multiple_mounts thành true, thì ứng dụng Files sẽ cho phép thêm nhiều điểm gắn từ giao diện người dùng. Nếu watchablefalse, nút làm mới sẽ hiển thị. Lưu ý: Nếu có thể, bạn nên hỗ trợ 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ợ các 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 các tệp lưu trữ và truy cập vào tệp trong một dịch vụ đám mây không phải Drive.

Kết nối hệ thống tệp

Việc cung cấp 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 một 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"), trình cung cấp phải là một ứng dụng đóng gói vì sự kiện onLaunched không có sẵn cho các tiện ích.

Nếu nguồn là mạng hoặc thiết bị, thì hệ thống tệp phải được gắn kết 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 được cung cấp sau khi được liên kết thông qua sự kiện onConfigureRequested. Công cụ này đặc biệt hữu ích cho các hệ thống tệp cung cấp nội dung thông qua mạng để đặt thông tin xác thực phù hợp. Bạn không bắt buộc phải xử lý sự kiện này.

Vòng đời

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

Loại

AbortRequestedOptions

Thuộc tính

  • fileSystemId

    string

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

  • operationRequestId

    number

    Mã của yêu cầu bị huỷ.

  • requestId

    number

    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

    string

    Giá trị nhận dạng của thao tác. Chuỗi bất kỳ hoặc CommonActionId cho các thao tác phổ biến.

  • title

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

    Tiêu đề của hành động. Thao tác này có thể bị bỏ qua đối với các thao tác phổ biến.

AddWatcherRequestedOptions

Thuộc tính

  • entryPath

    string

    Đường dẫn của mục nhập cần quan sát.

  • fileSystemId

    string

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

  • đệ quy

    boolean

    Việc quan sát có nên bao gồm tất cả các mục nhập con theo quy tắc đệ quy hay không. Điều này chỉ có thể đúng với các thư mục.

  • requestId

    number

    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 với mục nhập.

  • cloudFileInfo

    CloudFileInfo không bắt buộc

    Đang chờ xử lý

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

  • entryPath

    string

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

ChangeType

Loại thay đổi phát hiện được trên thư mục được ghi nhận.

Liệt kê

CloseFileRequestedOptions

Thuộc tính

  • fileSystemId

    string

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

  • openRequestId

    number

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

  • requestId

    number

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

CloudFileInfo

Đang chờ xử lý

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

    string

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

  • providerName

    string

    Giá trị nhận dạng cho nhà cung cấp bộ nhớ trên đám mây (ví dụ: "drive.google.com").

CommonActionId

Chrome 45 trở lên

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

Liệt kê

ConfigureRequestedOptions

Chrome 44 trở lên

Thuộc tính

  • fileSystemId

    string

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

  • requestId

    number

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

CopyEntryRequestedOptions

Thuộc tính

  • fileSystemId

    string

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

  • requestId

    number

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

  • sourcePath

    string

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

  • targetPath

    string

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

CreateDirectoryRequestedOptions

Thuộc tính

  • directoryPath

    string

    Đường dẫn của thư mục sẽ được tạo.

  • fileSystemId

    string

    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 hoạt động có mang tính đệ quy hay không (chỉ dành cho thư mục).

  • requestId

    number

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

CreateFileRequestedOptions

Thuộc tính

  • filePath

    string

    Đường dẫn của tệp sẽ được tạo.

  • fileSystemId

    string

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

  • requestId

    number

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

DeleteEntryRequestedOptions

Thuộc tính

  • entryPath

    string

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

  • fileSystemId

    string

    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 hoạt động có mang tính đệ quy hay không (chỉ dành cho thư mục).

  • requestId

    number

    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

    Đang chờ xử lý

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

  • cloudIdentifier

    CloudIdentifier không bắt buộc

    Chrome 117 trở lên

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

  • isDirectory

    boolean không bắt buộc

    "True" nếu đó là thư mục. Bạn phải cung cấp thông tin này 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 gần đây nhất của mục nhập này. Bạn phải cung cấp thông tin này 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 nhập này (không phải tên đường dẫn đầy đủ). Không được chứa '/'. Đối với gốc, giá trị này phải trống. Bạn phải cung cấp thông tin này nếu được yêu cầu trong options.

  • size

    số không bắt buộc

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

  • hình thu nhỏ

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

    Hình ả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 32 KB. Không bắt buộc, nhưng chỉ có thể cung cấp khi sự kiện onGetMetadataRequested yêu cầu rõ ràng.

ExecuteActionRequestedOptions

Chrome 45 trở lên

Thuộc tính

  • actionId

    string

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

  • entryPaths

    chuỗi[]

    Chrome 47 trở lên

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

  • fileSystemId

    string

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

  • requestId

    number

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

FileSystemInfo

Thuộc tính

  • displayName

    string

    Tên mà con người có thể đọc được cho hệ thống tệp.

  • fileSystemId

    string

    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

    number

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

  • supportsNotifyTag

    boolean không bắt buộc

    Chrome 45 trở lên

    Liệu hệ thống tệp có hỗ trợ trường tag để quan sát các thư mục hay không.

  • người theo dõi
    Chrome 45 trở lên

    Danh sách người theo dõi.

  • 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

    chuỗi[]

    Chrome 47 trở lên

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

  • fileSystemId

    string

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

  • requestId

    number

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

GetMetadataRequestedOptions

Thuộc tính

  • cloudFileInfo

    boolean

    Đang chờ xử lý

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

  • cloudIdentifier

    boolean

    Chrome 117 trở lên

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

  • entryPath

    string

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

  • fileSystemId

    string

    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 có yêu cầu giá trị is_directory.

  • mimeType

    boolean

    Chrome 49 trở lên

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

  • modificationTime

    boolean

    Chrome 49 trở lên

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

  • tên

    boolean

    Chrome 49 trở lên

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

  • requestId

    number

    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 có yêu cầu giá trị size.

  • hình thu nhỏ

    boolean

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

MountOptions

Thuộc tính

  • displayName

    string

    Tên mà con người có thể đọc được cho hệ thống tệp.

  • fileSystemId

    string

    Trình thụt lề chuỗi của hệ thống tệp. Phải là duy nhất cho mỗi tiện ích.

  • openedFilesLimit

    số 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 không được chỉ định hoặc 0, thì không bị giới hạn.

  • cố định

    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 vào 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

    Liệu hệ thống tệp có hỗ trợ trường tag cho các thư mục được ghi nhận 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

    string

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

  • requestId

    number

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

  • sourcePath

    string

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

  • targetPath

    string

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

NotifyOptions

Thuộc tính

  • changeType

    Loại thay đổi đã xảy ra với mục nhập được ghi nhận. Nếu mục bị XÓA thì mục nhập đã quan sát sẽ tự động bị xoá khỏi danh sách các mục được ghi nhận.

  • các thay đổi

    Thay đổi[] không bắt buộc

    Danh sách các thay đổi đối với các mục nhập trong thư mục được ghi nhận (bao gồm cả chính mục nhập đó)

  • fileSystemId

    string

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

  • observedPath

    string

    Đường dẫn của mục nhập đã quan sát.

  • đệ quy

    boolean

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

  • thẻ

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

    Gắn thẻ cho thông báo. Đây là trường bắt buộc nếu hệ thống tệp được gắn kết bằng tuỳ chọn supportsNotifyTag. Lưu ý rằng cờ này cần thiết để cung cấp thông báo về các thay đổi ngay cả khi hệ thống đã tắt.

OpenedFile

Thuộc tính

  • filePath

    string

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

  • chế độ

    Liệu tệp có được mở để đọc hoặc ghi hay không.

  • openRequestId

    number

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

OpenFileMode

Chế độ mở tệp. Được onOpenFileRequested sử dụng.

Liệt kê

OpenFileRequestedOptions

Thuộc tính

  • filePath

    string

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

  • fileSystemId

    string

    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

    number

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

ProviderError

Các mã lỗi được sử dụng bằng cách cung cấp tiện ích theo 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".

Liệt kê

"OK"

"FAILED"

"IN_USE"

"NOT_FOUND"

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"NO_SPACE"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

"ABORT"

"NOT_A_FILE"

"NOT_EMPTY"

"INVALID_URL"

"IO"

ReadDirectoryRequestedOptions

Thuộc tính

  • directoryPath

    string

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

  • fileSystemId

    string

    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 có yêu cầu giá trị is_directory.

  • mimeType

    boolean

    Chrome 49 trở lên

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

  • modificationTime

    boolean

    Chrome 49 trở lên

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

  • tên

    boolean

    Chrome 49 trở lên

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

  • requestId

    number

    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 có yêu cầu giá trị size.

  • hình thu nhỏ

    boolean

    Chrome 49 trở lên

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

ReadFileRequestedOptions

Thuộc tính

  • fileSystemId

    string

    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

    number

    Số byte sẽ được trả về.

  • bù trừ

    number

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

  • openRequestId

    number

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

  • requestId

    number

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

RemoveWatcherRequestedOptions

Thuộc tính

  • entryPath

    string

    Đường dẫn của mục đã xem.

  • fileSystemId

    string

    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

    number

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

TruncateRequestedOptions

Thuộc tính

  • filePath

    string

    Đường dẫn của tệp cần được cắt bớt.

  • fileSystemId

    string

    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

    number

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

  • requestId

    number

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

UnmountOptions

Thuộc tính

  • fileSystemId

    string

    Giá trị nhận dạng của hệ thống tệp cần được ngắt kết nối.

UnmountRequestedOptions

Thuộc tính

  • fileSystemId

    string

    Giá trị nhận dạng của hệ thống tệp cần được ngắt kết nối.

  • requestId

    number

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

Watcher

Thuộc tính

  • entryPath

    string

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

  • lastTag

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

    Thẻ được sử dụng trong thông báo gần đây nhất dành cho trình theo dõi.

  • đệ quy

    boolean

    Xem có nên bao gồm định kỳ tất cả các mục con hay không. Điều này chỉ có thể đúng với các thư mục.

WriteFileRequestedOptions

Thuộc tính

  • data

    ArrayBuffer

    Vùng đệm gồm các byte được ghi vào tệp.

  • fileSystemId

    string

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

  • bù trừ

    number

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

  • openRequestId

    number

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

  • requestId

    number

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

Phương thức

get()

Cam kết
chrome.fileSystemProvider.get(
  fileSystemId: string,
  callback?: function,
)

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

Tham số

  • fileSystemId

    string

  • số gọi lại

    hàm không bắt buộc

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

    (fileSystem: FileSystemInfo)=>void

Giá trị trả về

  • Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

getAll()

Cam kết
chrome.fileSystemProvider.getAll(
  callback?: function,
)

Trả về mọi hệ thống tệp được tiện ích gắn kết.

Tham số

  • số gọi lại

    hàm không bắt buộc

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

    (fileSystems: FileSystemInfo[])=>void

Giá trị trả về

  • Promise<FileSystemInfo[]>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

mount()

Cam kết
chrome.fileSystemProvider.mount(
  options: MountOptions,
  callback?: function,
)

Kết nối một hệ thống tệp với fileSystemIddisplayName đã cho. displayName sẽ được hiển thị trong bảng điều khiển bên trái của ứng dụng Files. displayName có thể chứa bất kỳ ký tự nào bao gồm '/', nhưng không được là một chuỗi trống. displayName phải mang tính mô tả nhưng không cần 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 kết, bạn phải thiết lập tuỳ chọn source một cách phù hợp.

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

Tham số

  • tùy chọn
  • số gọi lại

    hàm không bắt buộc

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

    ()=>void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

notify()

Cam kết Chrome 45 trở lên
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
  callback?: function,
)

Thông báo về những thay đổi trong thư mục đã theo dõi tại observedPath ở chế độ recursive. Nếu hệ thống tệp được gắn kết 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 tuỳ chọn tệp kê khai file_system_provider.notify thành true.

Giá trị của tag có thể là chuỗi bất kỳ mà duy nhất cho mỗi lệnh gọi, để 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 được đăng ký gần đây nhất là "123", thì tiện ích đó sẽ gọi notify cho mọi thay đổi đã xảy ra vì thay đổi được gắn thẻ là "123". Không được là một chuỗi trống.

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ố sửa đổi.

Xin lưu ý rằng nếu một thư mục mẹ bị xoá, thì tất cả các mục nhập con cũng sẽ bị xoá. Nếu chúng bị theo dõi thì API phải được thông báo về dữ kiện này. Ngoài ra, nếu một thư mục được đổi tên, thì trên thực tế tất cả các mục nhập con cháu sẽ bị xoá do không còn mục nhập nào dưới đườ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 thiết lập một mã lỗi tương ứng.

Tham số

  • tùy chọn
  • số gọi lại

    hàm không bắt buộc

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

    ()=>void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

unmount()

Cam kết
chrome.fileSystemProvider.unmount(
  options: UnmountOptions,
  callback?: function,
)

Huỷ kết nối hệ thống tệp với fileSystemId đã cho. Mã này phải được gọi 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 ngắt kết nối nếu không được yêu cầu (ví dụ: trong trường hợp mất kết nối hoặc lỗi tệp).

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

Tham số

  • tùy chọn
  • số gọi lại

    hàm không bắt buộc

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

    ()=>void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

Sự kiện

onAbortRequested

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

Giá trị này tăng lên khi yêu cầu huỷ một thao tác với operationRequestId. Phải dừng ngay thao tác được thực thi với operationRequestId và thực thi successCallback của yêu cầu huỷ này. Nếu huỷ không thành công, thì bạn phải gọi errorCallback. Lưu ý không được gọi các lệnh gọi lại của thao tác đã huỷ vì các lệnh gọi lại này sẽ bị bỏ qua. Mặc dù bạn đã gọi errorCallback, nhưng yêu cầu vẫn có thể bị buộc huỷ.

Tham số

  • số gọi lại

    hàm

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

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

    • tùy chọn
    • successCallback

      hàm

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

      ()=>void

    • errorCallback

      hàm

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

      (error: ProviderError)=>void

onAddWatcherRequested

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

Giá trị này tăng khi thiết lập một trình theo dõi thư mục mới được yêu cầu. Nếu xảy ra lỗi thì phải gọi errorCallback.

Tham số

  • số gọi lại

    hàm

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

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

onCloseFileRequested

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

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

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ 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 nâng lên khi hiển thị hộp thoại cấu hình cho fileSystemId được yêu cầu. Nếu trạng thái được xử lý, tuỳ chọn manfiest file_system_provider.configurable phải được đặt thành true.

Tham số

  • số gọi lại

    hàm

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

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

onCopyEntryRequested

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

Được tăng lên khi sao chép một mục nhập (đệ quy nếu là thư mục). Nếu xảy ra lỗi thì phải gọi errorCallback.

Tham số

  • số gọi lại

    hàm

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

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

onCreateDirectoryRequested

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

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

Tham số

onCreateFileRequested

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

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

Tham số

  • số gọi lại

    hàm

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

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

onDeleteEntryRequested

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

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

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ 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 yêu cầu tăng lên khi thực thi một thao tác cho một nhóm tệp hoặc thư mục. Sau khi hoàn tất hành động, bạn phải gọi successCallback. Khi gặp lỗi, phải gọi errorCallback.

Tham số

onGetActionsRequested

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

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

Tham số

onGetMetadataRequested

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

Giá trị này tăng lên khi yêu cầu siêu dữ liệu của một tệp hoặc thư mục tại entryPath. 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, phải gọi errorCallback.

Tham số

onMountRequested

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

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

Tham số

  • số gọi lại

    hàm

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

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

    • successCallback

      hàm

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

      ()=>void

    • errorCallback

      hàm

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

      (error: ProviderError)=>void

onMoveEntryRequested

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

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

Tham số

  • số gọi lại

    hàm

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

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

onOpenFileRequested

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

Giá trị này tăng lên khi mở 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 một lúc bằng MountOptions.

Tham số

onReadDirectoryRequested

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

Tăng 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, phải gọi errorCallback.

Tham số

onReadFileRequested

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

Nội dung này đượ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, phải gọi errorCallback.

Tham số

  • số gọi lại

    hàm

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

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

    • successCallback

      hàm

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

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

      • data

        ArrayBuffer

      • hasMore

        boolean

    • errorCallback

      hàm

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

      (error: ProviderError)=>void

onRemoveWatcherRequested

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

Giá trị này được đưa lên khi cần xoá trình theo dõi. Nếu xảy ra lỗi thì phải gọi errorCallback.

Tham số

onTruncateRequested

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

Yêu cầu mục này tăng lên khi cắt bớt tệp đến độ dài mong muốn. Nếu xảy ra lỗi thì phải gọi errorCallback.

Tham số

  • số gọi lại

    hàm

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

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

onUnmountRequested

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

Giá trị này được yêu cầu khi ngắt kết nối hệ thống tệp có 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ể ngắt kết nối (ví dụ: do có thao tác đang chờ xử lý) thì bạn phải gọi errorCallback.

Tham số

  • số gọi lại

    hàm

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

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

onWriteFileRequested

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

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

Tham số

  • số gọi lại

    hàm

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

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