Obsługa plików w Chrome OS

Obsługa plików pozwala skonfigurować ChromeOS w taki sposób, aby rozszerzenie mogło otwierać pliki za pomocą menu Otwórz w menu Plik lub Otwórz za pomocą menu kontekstowego. Po otwarciu przetwórz dane z pliku za pomocą interfejsu Launch Handler API na platformie internetowej. Następnie należy używać standardowych interfejsów API platformy internetowej do wyświetlania lub obsługi pliku.

Do menu Otwórz ChromeOS dodano moduł obsługi plików.
Do menu Otwórz ChromeOS dodano moduł obsługi plików.

Dostępność w rozszerzeniach

ChromeOS 120 lub nowszy.

Uprawnienia

Do obsługi plików nie są wymagane uprawnienia.

Plik manifestu

Musisz dodać tablicę "file_handlers" do pliku manifest.json.

Konteksty dodatkowe

Tego interfejsu API można używać w skryptach service worker, wyskakujących okienkach, panelach bocznych i skryptach treści.

Konfigurowanie modułu obsługi plików

Każdy element "file_handlers", czyli poszczególne moduły obsługi plików, określa typ lub typy plików obsługiwane przez określoną stronę rozszerzenia.

Określone moduły obsługi zostaną dodane do okna Pliki ChromeOS, a w szczególności do menu Otwórz i Otwórz. Pojawią się w tych menu tylko wtedy, gdy użytkownik wybierze plik z określonym rozszerzeniem. Jeśli na przykład moduł obsługi plików określa .txt, menu ChromeOS wyświetla ten moduł tylko wtedy, gdy wybrany jest plik z tym rozszerzeniem.

Przetwarzanie pliku

Moduł obsługi plików to plik HTML zawarty w rozszerzeniu. Gdy użytkownik wybierze moduł obsługi w menu, plik HTML otworzy się w nowej karcie. Przetwarzanie pliku, niezależnie od tego, czy jest wyświetlane, czy używane w inny sposób, odbywa się w języku JavaScript przy użyciu odpowiednich interfejsów API platformy internetowej. Kod przetwarzania musi znajdować się w osobnym pliku JavaScript, być zawarty w tagu <script> i musi również znajdować się w rozszerzeniu. Plik skryptu pobiera obiekt FileSystemFileHandle przy użyciu interfejsu LaunchQueue interfejsu Launch Handler API.

Przykład

Z przykładu poniżej dowiesz się, jak uzyskać obiekt FileSystemFileHandle za pomocą interfejsu LaunchQueue. Aby zobaczyć, jak działa obsługa plików, zainstaluj wersję demonstracyjną obsługi plików.

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