Beschreibung
Mit der chrome.syncFileSystem
API können Sie Daten in Google Drive speichern und synchronisieren. Diese API ist NICHT für den Zugriff auf beliebige Nutzerdokumente gedacht, die in Google Drive gespeichert sind. Sie bietet anwendungsspezifischen synchronisierbaren Speicher für Offline- und Caching-Nutzung. So sind dieselben Daten auf verschiedenen Clients verfügbar. Weitere Informationen zur Verwendung dieser API finden Sie unter Daten verwalten.
Berechtigungen
syncFileSystem
Typen
ConflictResolutionPolicy
Enum
"last_write_win"
FileInfo
Attribute
-
Aktion
SyncAction optional
Synchronisierungsaktion zum Auslösen des Ereignisses
onFileStatusChanged
ausgeführt. Der Aktionswert kann'added'
,'updated'
oder'deleted'
sein. Gilt nur, wenn der Status „'synced'
“ ist. -
direction
SyncDirection optional
Synchronisierungsrichtung für den Termin
onFileStatusChanged
. Der Wert für die Synchronisierungsrichtung kann'local_to_remote'
oder'remote_to_local'
sein. Gilt nur, wenn der Status „'synced'
“ ist. -
fileEntry
Eintrag
fileEntry
für die Zieldatei, deren Status sich geändert hat. Enthält den Namen und Pfad der synchronisierten Datei. Nach dem Löschen der Datei sind diefileEntry
-Informationen weiterhin verfügbar, die Datei ist jedoch nicht mehr vorhanden. -
status
Dateistatus nach dem Ereignis
onFileStatusChanged
. Der Statuswert kann'synced'
,'pending'
oder'conflicting'
sein.
FileStatus
Enum
"Synchronisiert"
Nicht widersprüchlich und es gibt keine ausstehenden lokalen Änderungen.
"pending"
Hat eine oder mehrere ausstehende lokale Änderungen, die noch nicht synchronisiert wurden.
"conflicting"
Die Datei steht in Konflikt mit der Remote-Version und muss manuell behoben werden.
FileStatusInfo
Attribute
-
error
String optional
Optionaler Fehler, der nur zurückgegeben wird, wenn beim Abrufen von FileStatus für die angegebene Datei ein Problem aufgetreten ist.
-
fileEntry
Eintrag
Einer der Einträge, der ursprünglich an getFileStatuses übergeben wurde.
-
status
Der Statuswert kann
'synced'
,'pending'
oder'conflicting'
sein.
ServiceInfo
Attribute
-
Beschreibung
String
-
state
ServiceStatus
Enum
"initializing"
Der Synchronisierungsdienst wird initialisiert, z.B. wie Daten aus der Datenbank wiederhergestellt oder die Verbindung und die Authentifizierung beim Dienst geprüft werden.
"running"
Der Synchronisierungsdienst wird ausgeführt.
"authentication_required"
Der Synchronisierungsdienst synchronisiert keine Dateien, da der Remote-Dienst vom Nutzer authentifiziert werden muss, um fortzufahren.
"temporär_unavailable"
Der Synchronisierungsdienst synchronisiert keine Dateien, da der Remote-Dienst aufgrund einiger behebbarer Fehler (vorübergehend) nicht verfügbar ist, z.B. das Netzwerk ist offline, der Remote-Dienst ist ausgefallen oder nicht erreichbar. Weitere Details sollten Sie mit dem Parameter description
in OnServiceInfoUpdated angeben (dieser kann dienstspezifische Details enthalten).
"disabled"
Der Synchronisierungsdienst ist deaktiviert und der Inhalt wird nie synchronisiert. Das kann z.B. passieren, wenn der Nutzer kein Konto für den Remote-Dienst hat oder beim Synchronisierungsdienst ein nicht behebbarer Fehler aufgetreten ist.
StorageInfo
Attribute
-
quotaBytes
Zahl
-
usageBytes
Zahl
SyncAction
Enum
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
Methoden
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Ruft die aktuelle Richtlinie zur Konfliktlösung ab.
Parameters
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(policy: ConflictResolutionPolicy) => void
-
policy
-
Rückgaben
-
Promise<ConflictResolutionPolicy>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
Gibt das FileStatus
für die angegebene fileEntry
zurück. Der Statuswert kann 'synced'
, 'pending'
oder 'conflicting'
sein. Der Status 'conflicting'
tritt nur auf, wenn die Richtlinie zur Konfliktlösung des Dienstes auf 'manual'
gesetzt ist.
Parameters
-
fileEntry
Eintrag
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(status: FileStatus) => void
-
status
-
Rückgaben
-
Promise<FileStatus>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
Gibt jedes FileStatus
für das angegebene fileEntry
-Array zurück. Wird normalerweise mit dem Ergebnis von dirReader.readEntries() aufgerufen.
Parameters
-
fileEntries
Objekt[]
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(status: FileStatusInfo[]) => void
-
status
-
Rückgaben
-
Promise<FileStatusInfo[]>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Gibt den aktuellen Backend-Status der Synchronisierung zurück.
Parameters
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(status: ServiceStatus) => void
-
status
-
Rückgaben
-
Promise<ServiceStatus>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
Gibt die aktuelle Nutzung und das aktuelle Kontingent in Byte für den Dateispeicher 'syncable'
der App zurück.
Parameters
-
fileSystem
DOMFileSystem
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(info: StorageInfo) => void
-
Info
-
Rückgaben
-
Promise<StorageInfo>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Gibt ein synchronisierbares Dateisystem zurück, das von Google Drive gesichert wird. Die zurückgegebene DOMFileSystem
-Instanz kann auf die gleiche Weise wie die temporären und persistenten Dateisysteme ausgeführt werden (siehe http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
Wenn Sie diese Funktion mehrmals aus derselben App aufrufen, wird derselbe Handle für dasselbe Dateisystem zurückgegeben.
Hinweis: Dieser Aufruf kann fehlschlagen. Das ist beispielsweise der Fall, wenn der Nutzer nicht in Chrome angemeldet ist oder kein Netzwerkvorgang stattfindet. Um diese Fehler zu beheben, muss „chrome.runtime.lastError“ im Callback überprüft werden.
Parameters
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Rückgaben
-
Promise<DOMFileSystem>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
)
Legt die standardmäßige Richtlinie zur Konfliktlösung für den 'syncable'
-Dateispeicher der App fest. Standardmäßig ist 'last_write_win'
festgelegt. Wenn die Richtlinie zur Konfliktlösung auf 'last_write_win'
gesetzt ist, werden Konflikte mit vorhandenen Dateien bei der nächsten Dateiaktualisierung automatisch gelöst. Optional kann callback
angegeben werden, um zu erfahren, ob die Anfrage erfolgreich war.
Parameters
-
policy
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Rückgaben
-
Promise<void>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
Veranstaltungen
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Wird ausgelöst, wenn eine Datei vom Hintergrundsynchronisierungsdienst aktualisiert wurde
Parameters
-
callback
Funktion
Der Parameter
callback
sieht so aus:(detail: FileInfo) => void
-
Detail
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Wird ausgelöst, wenn ein Fehler oder eine andere Statusänderung im Synchronisierungs-Backend aufgetreten ist, z. B. wenn die Synchronisierung aufgrund eines Netzwerk- oder Authentifizierungsfehlers vorübergehend deaktiviert wurde
Parameters
-
callback
Funktion
Der Parameter
callback
sieht so aus:(detail: ServiceInfo) => void
-
Detail
-