chrome.fileBrowserHandler

Opis

Użyj interfejsu chrome.fileBrowserHandler API, aby rozszerzyć przeglądarkę plików w Chrome OS. Możesz na przykład użyć tego interfejsu API, aby umożliwić użytkownikom przesyłanie plików na Twoją stronę.

Pojęcia i zastosowanie

Przeglądarka plików w ChromeOS pojawia się, gdy użytkownik naciśnie Alt+Shift+M lub podłączy urządzenie pamięci zewnętrznej, takie jak karta SD, pendrive, dysk zewnętrzny lub aparat cyfrowy. Oprócz plików na urządzeniach zewnętrznych przeglądarka plików może wyświetlać również pliki zapisane wcześniej przez użytkownika w systemie.

Gdy użytkownik wybierze co najmniej 1 plik, przeglądarka plików dodaje przyciski reprezentujące prawidłowe moduły obsługi tych plików. Na przykład na poniższym zrzucie ekranu wybranie pliku z przyrostkiem „.png” powoduje wyświetlenie użytkownikowi przycisku „Zapisz w galerii”.

przeglądarka plików w ChromeOS.
Przeglądarka plików w ChromeOS.

Uprawnienia

fileBrowserHandler

pliku manifestu rozszerzenia musisz zadeklarować uprawnienie "fileBrowserHandler".

Dostępność

Tylko w ChromeOS Tylko w tle

Aby zarejestrować rozszerzenie jako moduł obsługi co najmniej 1 typu pliku, musisz użyć pola "file_browser_handlers". Musisz też przesłać ikonę o wymiarach 16 x 16, która będzie wyświetlana na przycisku. Na przykład:

{   "name": "My extension",   ...   "file_browser_handlers": [     {       "id": "upload",       "default_title": "Save to Gallery", // What the button will display       "file_filters": [         "filesystem:*.jpg",  // To match all files, use "filesystem:*.*"         "filesystem:*.jpeg",         "filesystem:*.png"       ]     }   ],   "permissions" : [     "fileBrowserHandler"   ],   "icons": {     "16": "icon16.png",     "48": "icon48.png",     "128": "icon128.png"   },   ... } 

Implementacja narzędzia do obsługi przeglądarki plików

Aby korzystać z tego interfejsu API, musisz zaimplementować funkcję, która obsługuje zdarzenie onExecute obiektu chrome.fileBrowserHandler. Funkcja zostanie wywołana, gdy użytkownik kliknie przycisk, który reprezentuje moduł obsługi przeglądarki plików. W swojej funkcji użyj interfejsu File System API, aby uzyskać dostęp do zawartości pliku. Oto przykład:

chrome.fileBrowserHandler.onExecute.addListener(async (id, details) => {   if (id !== 'upload') {     return;  // check if you have multiple file_browser_handlers   }    for (const entry of detail.entries) {     // the FileSystemFileEntry doesn't have a Promise API, wrap in one     const file = await new Promise((resolve, reject) => {       entry.file(resolve, reject);     });     const buffer = await file.arrayBuffer();     // do something with buffer   } }); 

Modułowi obsługi zdarzenia przekazywane są 2 argumenty:

id
Wartość id z pliku manifestu. Jeśli Twoje rozszerzenie implementuje kilka modułów obsługi, możesz sprawdzić wartość identyfikatora, aby zobaczyć, który z nich został uruchomiony.
details
Obiekt opisujący zdarzenie. Wybrane przez użytkownika pliki możesz pobrać z pola entries tego obiektu, które jest tablicą obiektów FileSystemFileEntry.

Typy

FileHandlerExecuteEventDetails

Ładunek szczegółów zdarzenia dla zdarzenia fileBrowserHandler.onExecute.

Właściwości

  • wpisy

    any[]

    Tablica wystąpień Entry, która reprezentuje pliki będące celami tego działania (wybrane w przeglądarce plików ChromeOS).

  • tab_id

    number opcjonalny

    Identyfikator karty, która wywołała to zdarzenie. Identyfikatory kart są unikalne w ramach sesji przeglądarki.

Wydarzenia

onExecute

chrome.fileBrowserHandler.onExecute.addListener(
  callback: function,
)

Uruchamiane, gdy działanie dotyczące systemu plików jest wykonywane w przeglądarce plików ChromeOS.

Parametry