chrome.syncFileSystem

Opis

Aby zapisywać i synchronizować dane na Dysku Google, użyj interfejsu API chrome.syncFileSystem. Ten interfejs API NIE służy do uzyskiwania dostępu do dowolnych dokumentów użytkownika przechowywanych na Dysku Google. Udostępnia ona możliwą do zsynchronizowania pamięć używaną w konkretnych aplikacjach do użytku w trybie offline i w buforowaniu, dzięki czemu te same dane mogą być dostępne w różnych klientach. Więcej informacji o korzystaniu z tego interfejsu API znajdziesz w artykule Zarządzanie danymi.

Uprawnienia

syncFileSystem

Typy

ConflictResolutionPolicy

Typ wyliczeniowy

„manual”

FileInfo

Właściwości

  • działanie

    SyncAction opcjonalnie

    Działanie synchronizacji wykonane w celu wywołania zdarzenia onFileStatusChanged. Wartość działania może być 'added', 'updated' lub 'deleted'. Ma zastosowanie tylko wtedy, gdy stan to 'synced'.

  • direction

    SyncDirection (opcjonalne)

    Kierunek synchronizacji dla zdarzenia onFileStatusChanged. Wartość kierunku synchronizacji może być 'local_to_remote' lub 'remote_to_local'. Ma zastosowanie tylko wtedy, gdy stan to 'synced'.

  • fileEntry

    Wpis

    fileEntry dla docelowego pliku, którego stan się zmienił. Zawiera nazwę i ścieżkę do synchronizowanego pliku. Po usunięciu pliku informacje o stanie fileEntry będą nadal dostępne, ale plik już nie istnieje.

  • status

    Stan pliku po zdarzeniu onFileStatusChanged. Wartością stanu może być 'synced', 'pending' lub 'conflicting'.

FileStatus

Typ wyliczeniowy

„zsynchronizowany” 
Brak konfliktów i zawieszonych zmian lokalnych.

„oczekujące” 
Oczekuje na zapisanie co najmniej 1 zmian lokalnych, które nie zostały zsynchronizowane.

„conflicting” (konfliktujący)
Plik jest w konflikcie z wersją zdaną i musi zostać rozwiązany ręcznie.

FileStatusInfo

Właściwości

  • błąd

    ciąg znaków opcjonalny

    Opcjonalny błąd zwracany tylko wtedy, gdy wystąpił problem z pobraniem stanu pliku.

  • fileEntry

    Wpis

    Jeden z elementów wejściowych przekazanych pierwotnie do getFileStatuses.

  • status

    Wartość stanu może być 'synced', 'pending' lub 'conflicting'.

ServiceInfo

Właściwości

ServiceStatus

Typ wyliczeniowy

„inicjalizacja” 
Usługa synchronizacji jest inicjowana (np. przywracanie danych z bazy danych, sprawdzanie łączności i uwierzytelnianie w usłudze).

"running"
Usługa synchronizacji jest uruchomiona.

"authentication_required"
Usługa synchronizacji nie synchronizuje plików, ponieważ usługa zdalna musi zostać uwierzytelniona przez użytkownika.

"temporary_unavailable"
Usługa synchronizacji nie synchronizuje plików, ponieważ usługa zdalna jest (tymczasowo) niedostępna z powodu błędów możliwych do odzyskania, np. sieć jest offline, usługa zdalna jest niedostępna lub jest nieosiągalna. Więcej informacji należy podać za pomocą parametru description w narzędziu OnServiceInfoUpdated (który może zawierać szczegóły dotyczące usługi).

" disabled"
Usługa synchronizacji jest wyłączona, a treści nigdy nie będą synchronizowane. (Może się tak zdarzyć, gdy użytkownik nie ma konta w usłudze zdalnej lub gdy usługa synchronizacji napotkała nieodwracalny błąd).

StorageInfo

Właściwości

  • quotaBytes

    liczba

  • usageBytes

    liczba

SyncAction

Typ wyliczeniowy

„added”

„updated”

SyncDirection

Typ wyliczeniowy

"local_to_remote"

Metody

getConflictResolutionPolicy()

Obietnica
chrome.syncFileSystem.getConflictResolutionPolicy(
  callback?: function,
)

Pobiera bieżącą zasadę rozwiązywania konfliktów.

Parametry

Zwroty

  • Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

getFileStatus()

Obietnice
chrome.syncFileSystem.getFileStatus(
  fileEntry: Entry,
  callback?: function,
)

Zwraca FileStatus dla podanego fileEntry. Wartością stanu może być 'synced', 'pending' lub 'conflicting'. Pamiętaj, że stan 'conflicting' ma miejsce tylko wtedy, gdy zasada rozwiązywania konfliktów w usłudze jest ustawiona na 'manual'.

Parametry

  • fileEntry

    Wpis

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (status: FileStatus) => void

Zwroty

  • Promise<FileStatus>

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getFileStatuses()

Obietnice
chrome.syncFileSystem.getFileStatuses(
  fileEntries: object[],
  callback?: function,
)

Zwraca każdy element FileStatus w danej tablicy fileEntry. Ta funkcja jest zwykle wywoływana z wynikiem funkcji dirReader.readEntries().

Parametry

  • fileEntries

    obiekt[]

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (status: FileStatusInfo[]) => void

Zwroty

  • Promise<FileStatusInfo[]>

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getServiceStatus()

Obietnica
chrome.syncFileSystem.getServiceStatus(
  callback?: function,
)

Zwraca bieżący stan backendu synchronizacji.

Parametry

Zwroty

  • Obietnica<ServiceStatus>

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

getUsageAndQuota()

Obietnice
chrome.syncFileSystem.getUsageAndQuota(
  fileSystem: DOMFileSystem,
  callback?: function,
)

Zwraca bieżące wykorzystanie i limit miejsca w bajtach dla 'syncable' pliku w aplikacji.

Parametry

  • fileSystem

    DOMFileSystem

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (info: StorageInfo) => void

Zwroty

  • Promise&lt;StorageInfo&gt;

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

requestFileSystem()

Obietnice
chrome.syncFileSystem.requestFileSystem(
  callback?: function,
)

Zwraca system plików, który można zsynchronizować z Dyskiem Google. Z zwróconym obiektem DOMFileSystem można pracować tak samo jak z tymczasowymi i trwałymi systemami plików (patrz http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).

Wywołanie tej funkcji kilka razy z tej samej aplikacji spowoduje zwrócenie tego samego identyfikatora do tego samego systemu plików.

Pamiętaj, że to połączenie może się nie udać. na przykład wtedy, gdy użytkownik nie jest zalogowany w Chrome lub jeśli nie działa sieć. Aby obsłużyć te błędy, w funkcji wywołania zwrotnego należy sprawdzić wartość zmiennej chrome.runtime.lastError.

Parametry

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback wygląda tak:

    (fileSystem: DOMFileSystem) => void

    • fileSystem

      DOMFileSystem

Zwroty

  • Promise<DOMFileSystem>

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

setConflictResolutionPolicy()

Obietnice
chrome.syncFileSystem.setConflictResolutionPolicy(
  policy: ConflictResolutionPolicy,
  callback?: function,
)

Ustawia domyślną zasadę rozwiązywania konfliktów dla miejsca na pliki w 'syncable' dla aplikacji. Domyślnie ma ona wartość 'last_write_win'. Gdy zasada rozwiązywania konfliktów ma wartość 'last_write_win', konflikty dotyczące istniejących plików są automatycznie rozwiązywane przy następnej aktualizacji pliku. Możesz opcjonalnie podać funkcję callback, by sprawdzić, czy żądanie zostało zrealizowane.

Parametry

Zwroty

  • Obietnica<void>

    Chrome w wersji 117 lub nowszej

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

Wydarzenia

onFileStatusChanged

chrome.syncFileSystem.onFileStatusChanged.addListener(
  callback: function,
)

Wywoływane, gdy plik został zaktualizowany przez usługę synchronizacji w tle.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (detail: FileInfo) => void

onServiceStatusChanged

chrome.syncFileSystem.onServiceStatusChanged.addListener(
  callback: function,
)

Uruchamiane, gdy w backendzie synchronizacji wystąpi błąd lub inna zmiana stanu (na przykład gdy synchronizacja zostanie tymczasowo wyłączona z powodu błędu sieci lub uwierzytelniania).

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (detail: ServiceInfo) => void