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 pamięć masową z możliwością synchronizacji, która jest przeznaczona dla aplikacji i może być używana w trybie offline oraz do buforowania, dzięki czemu te same dane mogą być dostępne dla różnych klientów. Więcej informacji o korzystaniu z tego interfejsu API znajdziesz w artykule Zarządzanie danymi.
Uprawnienia
syncFileSystemTypy
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 opcjonalne
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
fileEntrydla pliku docelowego, którego stan się zmienił. Zawiera informacje o nazwie i ścieżce zsynchronizowanego pliku. Po usunięciu pliku informacje ofileEntrybę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
"synced"
Brak konfliktów i oczekujących zmian lokalnych.
"pending"
Ma 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
ciąg znaków opcjonalny
Opcjonalny błąd, który jest zwracany tylko wtedy, gdy wystąpił problem z pobraniem stanu FileStatus dla danego pliku.
-
fileEntry
Wpis
Jedna z pozycji pierwotnie przekazanych do getFileStatuses.
-
status
Wartość stanu może wynosić
'synced','pending'lub'conflicting'.
ServiceInfo
Właściwości
-
opis
tekst
-
stan
ServiceStatus
Typ wyliczeniowy
"initializing"
Usługa synchronizacji jest inicjowana (np. przywracane są dane z bazy danych, sprawdzane jest połączenie i uwierzytelnianie w usłudze).
"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 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 offline, usługa zdalna nie działa lub jest nieosiągalna itp. Więcej informacji powinien podać parametr description w 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ć na przykład wtedy, 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"
"updated"
"deleted"
SyncDirection
Typ wyliczeniowy
"local_to_remote"
"remote_to_local"
Metody
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
Pobiera bieżącą zasadę rozwiązywania konfliktów.
Parametry
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(policy: ConflictResolutionPolicy) => void
-
zasady
-
Zwroty
-
Promise<ConflictResolutionPolicy>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy 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 zasada rozwiązywania konfliktów usługi jest ustawiona na 'manual'.
Parametry
-
fileEntry
Wpis
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(status: FileStatus) => void
-
status
-
Zwroty
-
Promise<FileStatus>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
Zwraca każdy element FileStatus dla danej tablicy fileEntry. Zwykle wywoływana z wynikiem dirReader.readEntries().
Parametry
-
fileEntries
object[]
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(status: FileStatusInfo[]) => void
-
status
-
Zwroty
-
Promise<FileStatusInfo[]>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
Zwraca bieżący stan backendu synchronizacji.
Parametry
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(status: ServiceStatus) => void
-
status
-
Zwroty
-
Promise<ServiceStatus>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
Zwraca bieżące wykorzystanie i limit w bajtach dla miejsca na pliki 'syncable' aplikacji.
Parametry
-
fileSystem
DOMFileSystem
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(info: StorageInfo) => void
-
informacje
-
Zwroty
-
Promise<StorageInfo>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Zwraca system plików z możliwością synchronizacji, który jest obsługiwany przez Dysk Google. Zwróconą instancję DOMFileSystem można obsługiwać 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łanie tej metody 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, ważne jest, aby w wywołaniu zwrotnym sprawdzić chrome.runtime.lastError.
Parametry
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Zwroty
-
Promise<DOMFileSystem>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy 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 miejsca na pliki 'syncable' dla 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. Można opcjonalnie podać callback, aby dowiedzieć się, czy żądanie się powiodło.
Parametry
-
zasady
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
Zwroty
-
thought Promise<void>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
Wydarzenia
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Uruchamiany, gdy plik zostanie zaktualizowany przez usługę synchronizacji w tle.
Parametry
-
callback
funkcja
Parametr
callbackwyglą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 (np. gdy synchronizacja zostanie tymczasowo wyłączona z powodu błędu sieci lub uwierzytelniania).
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(detail: ServiceInfo) => void
-
szczegóły
-