Opis
Zapisuj i synchronizuj dane na Dysku Google za pomocą interfejsu API chrome.syncFileSystem
. Ten interfejs API NIE umożliwia 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
"last_write_win"
"manual",
FileInfo
Właściwości
-
działanie
Opcjonalne SyncAction
Działanie synchronizacji uruchomione w celu uruchomienia zdarzenia
onFileStatusChanged
. Wartością działania może być'added'
,'updated'
lub'deleted'
. Ma zastosowanie tylko wtedy, gdy stan to'synced'
. -
direction
SyncDirection (opcjonalne)
Kierunek synchronizacji zdarzenia
onFileStatusChanged
. Kierunek synchronizacji może mieć wartość'local_to_remote'
lub'remote_to_local'
. Ma zastosowanie tylko wtedy, gdy stan to'synced'
. -
fileEntry
Wpis
fileEntry
w przypadku pliku docelowego, którego stan się zmienił. Zawiera nazwę i ścieżkę zsynchronizowanego pliku. Po usunięciu pliku informacje o staniefileEntry
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
"synced"
Nie występuje w konflikcie i nie zawiera żadnych oczekujących zmian lokalnych.
"pending"
Zawiera co najmniej jedną oczekującą zmianę lokalną, która nie została zsynchronizowana.
"conflicting"
Plik powoduje konflikt z wersją zdalną i należy go rozwiązać ręcznie.
FileStatusInfo
Właściwości
-
błąd
ciąg znaków opcjonalny
Opcjonalny błąd, który jest zwracany tylko wtedy, gdy wystąpił problem z pobraniem stanu FileStatus danego pliku.
-
fileEntry
Wpis
Jeden z wpisów pierwotnie przydzielony do metody getFileStatuses.
-
status
Wartością stanu może być
'synced'
,'pending'
lub'conflicting'
.
ServiceInfo
Właściwości
-
opis
ciąg znaków
-
stan
ServiceStatus
Typ wyliczeniowy
"initializing"
Trwa inicjowanie usługi synchronizacji (np.przywracanie danych z bazy danych, sprawdzanie połączenia, uwierzytelnianie w usłudze itd.).
"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, aby kontynuować.
"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 na przykład zdarzyć, gdy użytkownik nie ma konta w usłudze zdalnej lub w usłudze synchronizacji wystąpił nieodwracalny błąd.
StorageInfo
Właściwości
-
quotaBytes
liczba
-
usageBytes
liczba
SyncAction
Typ wyliczeniowy
"added"
"zaktualizowane"
"deleted"
SyncDirection
Typ wyliczeniowy
"local_to_remote"
"remote_to_local"
Metody
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Pobiera bieżącą zasadę rozwiązywania konfliktów.
Parametry
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(policy: ConflictResolutionPolicy) => void
-
zasada
-
Zwroty
-
Promise<ConflictResolutionPolicy>
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()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
Zwraca FileStatus
dla podanej wartości 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
funkcja optional
Parametr
callback
wygląda tak:(status: FileStatus) => void
-
status
-
Zwroty
-
Promise<FileStatus>
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.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
Zwraca każdą FileStatus
z danej tablicy fileEntry
. Ta funkcja jest zwykle wywoływana z wynikiem funkcji dirReader.readEntries().
Parametry
-
fileEntries
object[]
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(status: FileStatusInfo[]) => void
-
status
-
Zwroty
-
Promise<FileStatusInfo[]>
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.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Zwraca bieżący stan backendu synchronizacji.
Parametry
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(status: ServiceStatus) => void
-
status
-
Zwroty
-
Promise<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()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
Zwraca bieżące wykorzystanie i limit (w bajtach) miejsca na pliki w usłudze 'syncable'
dla aplikacji.
Parametry
-
fileSystem
DOMFileSystem
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(info: StorageInfo) => void
-
informacje
-
Zwroty
-
Promise<StorageInfo>
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.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Zwraca możliwy do zsynchronizowania system plików oparty na Dysku Google. Zwróconą instancję DOMFileSystem
można obsługiwać w taki sam sposób jak w przypadku tymczasowych i stałych systemów 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 nicka 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 móc obsługiwać te błędy, należy zaznaczyć w wywołaniu zwrotnym chrome.runtime.lastError.
Parametry
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Zwroty
-
Promise<DOMFileSystem>
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.
setConflictResolutionPolicy()
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'
. Jeśli zasada rozwiązywania konfliktów ma wartość 'last_write_win'
, konflikty dotyczące istniejących plików są automatycznie usuwane przy następnej aktualizacji pliku. Możesz opcjonalnie podać funkcję callback
, by sprawdzić, czy żądanie zostało zrealizowane.
Parametry
-
zasada
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
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.
Wydarzenia
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Uruchamiane, gdy plik został zaktualizowany przez usługę synchronizacji w tle.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(detail: FileInfo) => void
-
szczegóły
-
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
-
szczegóły
-