Obsługa plików umożliwia skonfigurowanie ChromeOS w taki sposób, aby rozszerzenie mogło otwierać pliki za pomocą menu Otwórz w menu plików lub menu Otwórz za pomocą w menu kontekstowym. Po otwarciu pliku przetwarzasz jego dane za pomocą interfejsu Launch Handler API platformy internetowej. Następnie użyjesz standardowych interfejsów API platformy internetowej, aby wyświetlić lub obsłużyć plik.
Dostępność w rozszerzeniach
ChromeOS w wersji 120 lub nowszej.
Uprawnienia
Do obsługi plików nie są wymagane żadne uprawnienia.
Plik manifestu
Musisz dodać tablicę "file_handlers" do pliku manifest.json.
Konteksty pomocnicze
Tego interfejsu API można używać w procesach roboczych usług rozszerzeń, wyskakujących okienkach, panelach bocznych lub skryptach treści.
Konfigurowanie narzędzia do obsługi plików
Każdy element "file_handlers", czyli każdy program obsługi plików, określa typ lub typy plików, które mają być obsługiwane przez konkretną stronę rozszerzenia.
Określone przez Ciebie programy obsługi zostaną dodane do okna Pliki w ChromeOS, a w szczególności do menu Otwórz i Otwórz za pomocą. Będą one widoczne 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 zostanie wybrany plik z tym rozszerzeniem.
Przetwarzanie pliku
Obsługa plików to plik HTML zawarty w rozszerzeniu. Gdy użytkownik wybierze Twój program obsługi z menu, plik HTML otworzy się w nowej karcie. Przetwarzanie pliku, niezależnie od tego, czy go wyświetlasz, czy używasz w inny sposób, odbywa się za pomocą JavaScriptu z użyciem odpowiednich interfejsów API platformy internetowej. Kod przetwarzania musi znajdować się w osobnym pliku JavaScript i być dołączony za pomocą tagu <script>. Musi też być zawarty w rozszerzeniu. Plik skryptu używa interfejsu LaunchQueue interfejsu Launch Handler API, aby uzyskać obiekt FileSystemFileHandle.
Przykład
Poniższy przykład pokazuje, jak uzyskać obiekt FileSystemFileHandle za pomocą interfejsu LaunchQueue. Aby zobaczyć, jak działa obsługa plików, zainstaluj File Handling Demo (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];
});
}
``````