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 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
„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
-
opis
ciąg znaków
-
stan
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()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Pobiera bieżącą zasadę rozwiązywania konfliktów.
Parametry
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
wygląda tak:(policy: ConflictResolutionPolicy) => void
-
zasada
-
Zwroty
-
Promise<ConflictResolutionPolicy>
Chrome w wersji 117 lub nowszejObietnice 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 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
-
status
-
Zwroty
-
Promise<FileStatus>
Chrome w wersji 117 lub nowszejObietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.
getFileStatuses()
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
-
status
-
Zwroty
-
Promise<FileStatusInfo[]>
Chrome w wersji 117 lub nowszejObietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Zwraca bieżący stan backendu synchronizacji.
Parametry
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(status: ServiceStatus) => void
-
status
-
Zwroty
-
Obietnica<ServiceStatus>
Chrome w wersji 117 lub nowszejObietnice 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 miejsca w bajtach dla 'syncable'
pliku w aplikacji.
Parametry
-
fileSystem
DOMFileSystem
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(info: StorageInfo) => void
-
informacje
-
Zwroty
-
Promise<StorageInfo>
Chrome w wersji 117 lub nowszejObietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.
requestFileSystem()
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 nowszejObietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy 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'
. 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
-
zasada
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 117 lub nowszejObietnice 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
-
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
-