Descrizione
Utilizza l'API chrome.syncFileSystem per salvare e sincronizzare i dati su Google Drive. Questa API NON è destinata all'accesso a documenti utente arbitrari archiviati su Google Drive. Fornisce uno spazio di archiviazione sincronizzabile specifico per l'app per l'utilizzo offline e la memorizzazione nella cache, in modo che gli stessi dati possano essere disponibili su client diversi. Per saperne di più sull'utilizzo di questa API, consulta Gestisci i dati.
Autorizzazioni
syncFileSystemTipi
ConflictResolutionPolicy
Enum
"last_write_win"
"manual"
FileInfo
Proprietà
-
azione
SyncAction facoltativo
Azione di sincronizzazione eseguita per attivare l'evento
onFileStatusChanged. Il valore dell'azione può essere'added','updated'o'deleted'. Si applica solo se lo stato è'synced'. -
direction
SyncDirection facoltativo
Direzione di sincronizzazione per l'evento
onFileStatusChanged. Il valore della direzione di sincronizzazione può essere'local_to_remote'o'remote_to_local'. Si applica solo se lo stato è'synced'. -
fileEntry
Voce
fileEntryper il file di destinazione il cui stato è cambiato. Contiene informazioni sul nome e sul percorso del file sincronizzato. In caso di eliminazione del file, le informazioni difileEntrysaranno ancora disponibili, ma il file non esisterà più. -
stato
Stato del file risultante dopo l'evento
onFileStatusChanged. Il valore dello stato può essere'synced','pending'o'conflicting'.
FileStatus
Enum
"synced"
Non in conflitto e non presenta modifiche locali in attesa.
"pending"
Contiene una o più modifiche locali in attesa che non sono state sincronizzate.
"conflicting"
Il file è in conflitto con la versione remota e deve essere risolto manualmente.
FileStatusInfo
Proprietà
-
errore
stringa facoltativa
Errore facoltativo che viene restituito solo se si è verificato un problema durante il recupero di FileStatus per il file specificato.
-
fileEntry
Voce
Uno degli oggetti Entry originariamente forniti a getFileStatuses.
-
stato
Il valore dello stato può essere
'synced','pending'o'conflicting'.
ServiceInfo
Proprietà
-
descrizione
stringa
-
stato
ServiceStatus
Enum
"initializing"
Il servizio di sincronizzazione è in fase di inizializzazione (ad es. ripristino dei dati dal database, controllo della connettività e autenticazione al servizio e così via).
"running"
Il servizio di sincronizzazione è attivo e funzionante.
"authentication_required"
Il servizio di sincronizzazione non sincronizza i file perché il servizio remoto deve essere autenticato dall'utente per procedere.
"temporary_unavailable"
Il servizio di sincronizzazione non sincronizza i file perché il servizio remoto non è (temporaneamente) disponibile a causa di alcuni errori recuperabili, ad esempio la rete è offline, il servizio remoto non è attivo o non è raggiungibile e così via. Ulteriori dettagli devono essere forniti dal parametro description in OnServiceInfoUpdated (che potrebbe contenere dettagli specifici del servizio).
"disabled"
Il servizio di sincronizzazione è disattivato e i contenuti non verranno mai sincronizzati. (Ad esempio, questo potrebbe accadere quando l'utente non ha un account sul servizio remoto o il servizio di sincronizzazione ha riscontrato un errore irreversibile).
StorageInfo
Proprietà
-
quotaBytes
numero
-
usageBytes
numero
SyncAction
Enum
"added"
"updated"
"deleted"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
Metodi
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
Recupera l'attuale policy di risoluzione dei conflitti.
Parametri
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(policy: ConflictResolutionPolicy) => void
-
policy
-
Resi
-
Promise<ConflictResolutionPolicy>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
Restituisce l'elemento FileStatus per l'elemento fileEntry specificato. Il valore dello stato può essere 'synced', 'pending' o 'conflicting'. Tieni presente che lo stato 'conflicting' si verifica solo quando la policy di risoluzione dei conflitti del servizio è impostata su 'manual'.
Parametri
-
fileEntry
Voce
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(status: FileStatus) => void
-
stato
-
Resi
-
Promise<FileStatus>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
Restituisce ogni FileStatus per l'array fileEntry specificato. In genere viene chiamato con il risultato di dirReader.readEntries().
Parametri
-
fileEntries
object[]
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(status: FileStatusInfo[]) => void
-
stato
-
Resi
-
Promise<FileStatusInfo[]>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
Restituisce lo stato attuale del backend di sincronizzazione.
Parametri
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(status: ServiceStatus) => void
-
stato
-
Resi
-
Promise<ServiceStatus>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
Restituisce l'utilizzo e la quota attuali in byte per lo spazio di archiviazione dei file 'syncable' per l'app.
Parametri
-
fileSystem
DOMFileSystem
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(info: StorageInfo) => void
-
informazioni
-
Resi
-
Promise<StorageInfo>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Restituisce un file system sincronizzabile supportato da Google Drive. L'istanza DOMFileSystem restituita può essere utilizzata nello stesso modo dei file system temporanei e persistenti (vedi http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
Se viene chiamato più volte dalla stessa app, verrà restituito lo stesso handle per lo stesso file system.
Tieni presente che questa chiamata può non riuscire. Ad esempio, se l'utente non ha eseguito l'accesso a Chrome o se non è presente alcuna operazione di rete. Per gestire questi errori, è importante che chrome.runtime.lastError venga controllato nel callback.
Parametri
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Resi
-
Promise<DOMFileSystem>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
Imposta la policy predefinita per la risoluzione dei conflitti per l'archiviazione dei file 'syncable' per l'app. Per impostazione predefinita, è impostata su 'last_write_win'. Quando la policy di risoluzione dei conflitti è impostata su 'last_write_win', i conflitti per i file esistenti vengono risolti automaticamente al successivo aggiornamento del file. È possibile fornire facoltativamente callback per sapere se la richiesta è andata a buon fine o meno.
Parametri
-
policy
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
Eventi
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Attivato quando un file è stato aggiornato dal servizio di sincronizzazione in background.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(detail: FileInfo) => void
-
dettaglio
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Viene attivato quando si verifica un errore o un altro cambiamento di stato nel backend di sincronizzazione (ad esempio, quando la sincronizzazione viene temporaneamente disattivata a causa di un errore di rete o di autenticazione).
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(detail: ServiceInfo) => void
-
dettaglio
-