Opis
Używaj interfejsu chrome.syncFileSystem
API do zapisywania danych na Dysku Google i synchronizowania z nim zmian. Ten interfejs API NIE służy do uzyskiwania dostępu do dowolnych dokumentów użytkownika przechowywanych na Dysku Google. Zapewnia on pamięć synchronizowaną w ramach aplikacji do użytku offline i buforowania, dzięki czemu te same dane mogą być dostępne na 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
SyncAction opcjonalny
Działanie synchronizacji podjęte w celu wywołania zdarzenia
onFileStatusChanged
. Wartość działania może wynosić'added'
,'updated'
lub'deleted'
. Ma zastosowanie tylko wtedy, gdy stan to'synced'
. -
direction
SyncDirection opcjonalny
Kierunek synchronizacji zdarzenia
onFileStatusChanged
. Wartość kierunku synchronizacji może wynosić'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 uległ zmianie. Zawiera nazwę i ścieżkę zsynchronizowanego pliku. Po usunięciu pliku informacjefileEntry
będą nadal dostępne, ale plik nie będzie już istniał. -
status
Stan pliku po zdarzeniu
onFileStatusChanged
. Wartość stanu może wynosić'synced'
,'pending'
lub'conflicting'
.
FileStatus
Typ wyliczeniowy
„zsynchronizowano”
Brak konfliktów i oczekujących zmian lokalnych.
„oczekujące”
Zawiera co najmniej 1 oczekującą zmianę lokalną, która nie została zsynchronizowana.
„conflicting”
Plik jest w konflikcie z wersją zdalną i musi zostać rozwiązany ręcznie.
FileStatusInfo
Właściwości
-
błąd
string opcjonalny
Opcjonalny błąd, który jest zwracany tylko wtedy, gdy wystąpił problem z pobraniem stanu pliku dla danego pliku.
-
fileEntry
Wpis
Jeden z obiektów Entry pierwotnie przekazanych do getFileStatuses.
-
status
Wartość stanu może wynosić
'synced'
,'pending'
lub'conflicting'
.
ServiceInfo
Właściwości
-
opis
ciąg znaków
-
stan
ServiceStatus
Typ wyliczeniowy
„initializing”
Usługa synchronizacji jest inicjowana (np.przywracanie danych z bazy danych, sprawdzanie połączenia i uwierzytelnianie w usłudze itp.).
„running”
Usługa synchronizacji działa.
„authentication_required”
Usługa synchronizacji nie synchronizuje plików, ponieważ usługa zdalna wymaga uwierzytelnienia przez użytkownika, aby można było kontynuować.
„temporary_unavailable”
Usługa synchronizacji nie synchronizuje plików, ponieważ usługa zdalna jest (tymczasowo) niedostępna z powodu błędów, które można naprawić, np. sieć jest niedostępna, usługa zdalna nie działa lub jest nieosiągalna itp. Więcej szczegółów powinno być podanych w parametrze description
w OnServiceInfoUpdated (który może zawierać szczegóły dotyczące usługi).
„disabled”
Usługa synchronizacji jest wyłączona i treści nigdy nie będą synchronizowane. (Może się to zdarzyć, gdy użytkownik nie ma konta w usłudze zdalnej lub usługa synchronizacji napotkała nieodwracalny błąd).
StorageInfo
Właściwości
-
quotaBytes
liczba
-
usageBytes
liczba
SyncAction
Typ wyliczeniowy
„added”
„updated”
„deleted”
SyncDirection
Typ wyliczeniowy
"local_to_remote"
"remote_to_local"
Metody
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
Pobiera bieżące zasady rozwiązywania konfliktów.
Parametry
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(policy: ConflictResolutionPolicy) => void
-
zasada
-
Zwroty
-
Promise<ConflictResolutionPolicy>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
Zwraca FileStatus
dla podanego fileEntry
. Wartość stanu może wynosić 'synced'
, 'pending'
lub 'conflicting'
. Pamiętaj, że stan 'conflicting'
występuje tylko wtedy, gdy zasady rozwiązywania konfliktów usługi są ustawione na 'manual'
.
Parametry
-
fileEntry
Wpis
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(status: FileStatus) => void
-
status
-
Zwroty
-
Promise<FileStatus>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
Zwraca każdy element FileStatus
z podanej tablicy fileEntry
. Zwykle wywoływana z wynikiem funkcji dirReader.readEntries().
Parametry
-
fileEntries
object[]
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(status: FileStatusInfo[]) => void
-
status
-
Zwroty
-
Promise<FileStatusInfo[]>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
Zwraca bieżący stan backendu synchronizacji.
Parametry
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(status: ServiceStatus) => void
-
status
-
Zwroty
-
Promise<ServiceStatus>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
Zwraca bieżące wykorzystanie i limit miejsca na dane w bajtach w przypadku 'syncable'
pamięci plików aplikacji.
Parametry
-
fileSystem
DOMFileSystem
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(info: StorageInfo) => void
-
informacje
-
Zwroty
-
Promise<StorageInfo>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Zwraca synchronizowany system plików obsługiwany przez Dysk Google. Zwrócona instancja DOMFileSystem
może być obsługiwana w taki sam sposób jak tymczasowe i trwałe systemy plików (patrz http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
Wielokrotne wywoływanie tej funkcji z tej samej aplikacji spowoduje zwrócenie tego samego uchwytu do tego samego systemu plików.
Pamiętaj, że to wywołanie może się nie powieść. Na przykład, jeśli użytkownik nie jest zalogowany w Chrome lub nie ma połączenia z siecią. Aby obsłużyć te błędy, w funkcji zwrotnej należy sprawdzić, czy występuje chrome.runtime.lastError.
Parametry
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Zwroty
-
Promise<DOMFileSystem>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
Ustawia domyślne zasady rozwiązywania konfliktów w przypadku 'syncable'
pamięci plików aplikacji. Domyślnie jest ustawiona wartość 'last_write_win'
. Gdy zasada rozwiązywania konfliktów jest ustawiona na 'last_write_win'
, konflikty dotyczące istniejących plików są automatycznie rozwiązywane przy następnej aktualizacji pliku. callback
można podać opcjonalnie, aby sprawdzić, czy żądanie zostało zrealizowane.
Parametry
-
zasada
-
callback
funkcja opcjonalna
Parametr
callback
wygląda tak:() => void
Zwroty
-
Promise<void>
Chrome 117 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą 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
-
callback
funkcja
Parametr
callback
wygląda tak:(detail: FileInfo) => void
-
szczegóły
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Wywoływane, gdy w backendzie synchronizacji wystąpi błąd lub inna zmiana stanu (np. gdy synchronizacja jest tymczasowo wyłączona z powodu błędu sieci lub uwierzytelniania).
Parametry
-
callback
funkcja
Parametr
callback
wygląda tak:(detail: ServiceInfo) => void
-
szczegóły
-