Dateiverarbeitung unter Chrome OS

Mit der Dateiverarbeitung können Sie ChromeOS so konfigurieren, dass Ihre Erweiterung Dateien entweder über das Menü „Öffnen“ des Menüs „Datei“ oder über das Menü „Öffnen mit“ des Kontextmenüs öffnen kann. Nach dem Öffnen verarbeiten Sie die Daten der Datei mit der Launch Handler API der Webplattform. Anschließend verwenden Sie Standard-Webplattform-APIs, um die Datei anzuzeigen oder zu verarbeiten.

Dem ChromeOS-Menü „Öffnen“ wurde ein Dateihandler hinzugefügt.
Ein Dateihandler wurde dem ChromeOS-Menü „Öffnen“ hinzugefügt.

Verfügbarkeit in Erweiterungen

ChromeOS 120 oder höher

Berechtigungen

Für die Dateiverarbeitung sind keine Berechtigungen erforderlich.

Manifest

Sie müssen das "file_handlers" Array der Datei manifest.json hinzufügen.

Unterstützte Kontexte

Diese API kann in Service Workern von Erweiterungen, Pop-ups, Seitenleisten oder Inhaltsskripts verwendet werden.

Dateihandler konfigurieren

Jedes Mitglied von "file_handlers" – also jeder Dateihandler – gibt einen oder mehrere Dateitypen an, die von einer bestimmten Erweiterungsseite verarbeitet werden sollen.

Die von Ihnen angegebenen Handler werden dem ChromeOS-Fenster „Dateien“ und insbesondere den Menüs „Öffnen“ und „Öffnen mit“ hinzugefügt. Sie werden nur in diesen Menüs angezeigt, wenn der Nutzer eine Datei mit der entsprechenden Erweiterung auswählt. Wenn ein Dateihandler beispielsweise .txt angibt, werden die ChromeOS-Menüs nur dann angezeigt, wenn eine Datei mit dieser Erweiterung ausgewählt wird.

Datei verarbeiten

Der Dateihandler ist eine HTML-Datei, die in Ihrer Erweiterung enthalten ist. Wenn der Nutzer Ihren Handler in einem Menü auswählt, wird die HTML-Datei in einem neuen Tab geöffnet. Die Verarbeitung der Datei, unabhängig davon, ob Sie sie anzeigen oder auf andere Weise verwenden, erfolgt mit JavaScript und den entsprechenden Webplattform-APIs. Der Verarbeitungscode muss sich in einer separaten JavaScript-Datei befinden und über ein <script> Tag eingebunden werden. Außerdem muss er in Ihrer Erweiterung enthalten sein. Die Skriptdatei verwendet die LaunchQueue-Schnittstelle der Launch Handler API, um ein FileSystemFileHandle-Objekt abzurufen.

Beispiel

Im folgenden Beispiel wird gezeigt, wie Sie mit der LaunchQueue-Schnittstelle ein FileSystemFileHandle-Objekt abrufen. Wenn Sie die Dateiverarbeitung in Aktion sehen möchten, installieren Sie die Demo zur Dateiverarbeitung.

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