在 Chrome OS 上處理檔案

透過檔案處理功能,您可以設定 ChromeOS,讓擴充功能使用檔案選單的「開啟」選單或內容選單的「開啟方式」選單開啟檔案。開啟檔案後,您可以使用網路平台的 Launch Handler API 處理檔案資料。接著,您可以使用標準網頁平台 API 顯示或處理檔案

檔案處理常式已新增至 ChromeOS 開啟選單。
ChromeOS「開啟」選單中新增的檔案處理常式。

擴充功能適用情形

ChromeOS 120 以上版本。

權限

處理檔案時不需要任何權限。

資訊清單

您需要在 manifest.json 檔案中新增 "file_handlers" 陣列。

支援情境

這個 API 可用於擴充功能服務工作人員、彈出式視窗、側邊面板或內容指令碼。

設定檔案處理常式

每個 "file_handlers" 的成員 (也就是每個檔案處理常式) 都會指定要由特定擴充功能頁面處理的檔案類型。

您指定的處理常式會新增至 ChromeOS 檔案視窗,特別是「開啟」和「開啟方式」選單。只有在使用者選取具有特定副檔名的檔案時,這些選單才會顯示。舉例來說,如果檔案處理常式指定 .txt,則選取具有該副檔名的檔案時,ChromeOS 選單只會顯示該處理常式。

處理檔案

檔案處理常式是擴充功能內含的 HTML 檔案。使用者從選單中選取處理常式時,系統會在新的分頁中開啟 HTML 檔案。無論是要顯示檔案或以其他方式使用,都是透過 JavaScript 和適當的網頁平台 API 處理。處理程式碼必須放在個別的 JavaScript 檔案中,並透過 <script> 標記納入擴充功能。指令碼檔案會使用 Launch Handler API 的 LaunchQueue 介面取得 FileSystemFileHandle 物件。

範例

以下範例說明如何使用 LaunchQueue 介面取得 FileSystemFileHandle 物件。如要查看檔案處理作業的實際運作情形,請安裝「檔案處理示範」。

if ('launchQueue' in window) {
  launchQueue.setConsumer(async launchParams => {
    if (!launchParams.files || !launchParams.files.length) { return; }
    const fileHandle = launchParams.files[0];
  });
}
``````