Descrizione
Utilizza l'API chrome.syncFileSystem
per salvare e sincronizzare i dati su Google Drive. Questa API NON consente di accedere a documenti utente arbitrari archiviati su Google Drive. Fornisce spazio di archiviazione sincronizzabile specifico dell'app per l'utilizzo offline e di memorizzazione nella cache, in modo che gli stessi dati siano disponibili su diversi client. Per saperne di più sull'utilizzo di questa API, consulta Gestione dei dati.
Autorizzazioni
syncFileSystem
Tipi
ConflictResolutionPolicy
Enum
"last_write_win"
"manuale"
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
fileEntry
per il file di destinazione il cui stato è stato modificato. Contiene informazioni sul nome e sul percorso del file sincronizzato. Al momento dell'eliminazione del file, le informazioni sufileEntry
saranno 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 sospeso.
"pending"
Ha una o più modifiche locali in attesa che non sono state sincronizzate.
"In conflitto"
I file sono in conflitto con la versione remota e devono essere risolti manualmente.
FileStatusInfo
Proprietà
-
errore
stringa facoltativo
Errore facoltativo che viene restituito solo se si è verificato un problema durante il recupero di FileStatus per il file specificato.
-
fileEntry
Voce
Una delle voci è stata assegnata originariamente a getFileStatuses.
-
stato
Il valore dello stato può essere
'synced'
,'pending'
o'conflicting'
.
ServiceInfo
Proprietà
-
descrizione
stringa
-
stato
ServiceStatus
Enum
"inizializzazione"
Il servizio di sincronizzazione è in fase di inizializzazione (ad esempio il ripristino dei dati dal database, il controllo della connettività, l'autenticazione al servizio e così via).
"running"
Il servizio di sincronizzazione è attivo e in esecuzione.
"authentication_required"
Il servizio di sincronizzazione non sta sincronizzando i file perché il servizio remoto deve essere autenticato dall'utente per procedere.
"temporary_unavailable"
Il servizio di sincronizzazione non sta sincronizzando i file perché il servizio remoto non è (temporaneamente) non disponibile a causa di alcuni errori recuperabili, ad esempio la rete è offline, il servizio remoto non è disponibile o non è raggiungibile e così via. È necessario fornire maggiori dettagli tramite il parametro description
in OnServiceInfoUpdated (che potrebbe contenere dettagli specifici del servizio).
"disattivato"
Il servizio di sincronizzazione è disattivato e i contenuti non verranno mai sincronizzati. Questo può accadere, ad esempio, quando l'utente non ha alcun account sul servizio remoto o quando si è verificato un errore irreversibile nel servizio di sincronizzazione.
StorageInfo
Proprietà
-
quotaBytes
numero
-
usageBytes
numero
SyncAction
Enum
"aggiunto"
"aggiornato"
"eliminato"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
Metodi
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Recupera l'attuale criterio di risoluzione dei conflitti.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(policy: ConflictResolutionPolicy) => void
-
policy
-
Resi
-
Promise<ConflictResolutionPolicy>
Chrome 117 e versioni successive .Le promesse 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,
)
Restituisce FileStatus
per il fileEntry
specificato. Il valore dello stato può essere 'synced'
, 'pending'
o 'conflicting'
. Tieni presente che lo stato 'conflicting'
si verifica solo quando il criterio di risoluzione dei conflitti del servizio è impostato su 'manual'
.
Parametri
-
fileEntry
Voce
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(status: FileStatus) => void
-
stato
-
Resi
-
Promise<FileStatus>
Chrome 117 e versioni successive .Le promesse 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,
)
Restituisce ogni FileStatus
per l'array fileEntry
specificato. Viene generalmente chiamato con il risultato di dirReader.readEntries().
Parametri
-
fileEntries
object[]
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(status: FileStatusInfo[]) => void
-
stato
-
Resi
-
Promise<FileStatusInfo[]>
Chrome 117 e versioni successive .Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Restituisce lo stato attuale del backend di sincronizzazione.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(status: ServiceStatus) => void
-
stato
-
Resi
-
Promise<ServiceStatus>
Chrome 117 e versioni successive .Le promesse 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,
)
Restituisce l'utilizzo attuale e la quota in byte per lo spazio di archiviazione di file 'syncable'
dell'app.
Parametri
-
fileSystem
DOMFileSystem
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(info: StorageInfo) => void
-
informazioni
-
Resi
-
Promise<StorageInfo>
Chrome 117 e versioni successive .Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Restituisce un file system sincronizzabile supportato da Google Drive. L'istanza DOMFileSystem
restituita può essere utilizzata allo stesso modo dei file system temporanei e permanenti (vedi http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
Se questa funzione viene richiamata più volte dalla stessa app, lo stesso handle verrà restituito allo stesso file system.
Tieni presente che questa chiamata potrebbe non riuscire. ad esempio se l'utente non ha eseguito l'accesso a Chrome o se non viene eseguita alcuna operazione di rete. Per gestire questi errori, è importante che chrome.runtime.lastError venga controllato nel callback.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Resi
-
Promise<DOMFileSystem>
Chrome 117 e versioni successive .Le promesse 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,
)
Imposta il criterio predefinito per la risoluzione dei conflitti per l'archiviazione dei file 'syncable'
dell'app. Per impostazione predefinita, è impostato su 'last_write_win'
. Se il criterio per la risoluzione dei conflitti è impostato su 'last_write_win'
, i conflitti per i file esistenti vengono risolti automaticamente al successivo aggiornamento del file. Facoltativamente, puoi specificare callback
per sapere se la richiesta è andata a buon fine o meno.
Parametri
-
policy
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promesso<void>
Chrome 117 e versioni successive .Le promesse 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 viene aggiornato dal servizio di sincronizzazione in background.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(detail: FileInfo) => void
-
dettaglio
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Attivato quando si è verificato un errore o un'altra modifica dello stato nel backend di sincronizzazione (ad esempio, quando la sincronizzazione è temporaneamente disattivata a causa di un errore di rete o di autenticazione).
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(detail: ServiceInfo) => void
-
dettaglio
-