Description
Utilisez l'API chrome.syncFileSystem
pour enregistrer et synchroniser des données dans Google Drive. Cette API ne permet PAS d'accéder à des documents utilisateur arbitraires stockés dans Google Drive. Elle fournit un stockage synchronisé spécifique à l'application pour l'utilisation hors connexion et la mise en cache, afin que les mêmes données puissent être disponibles sur différents clients. Lisez Gérer les données pour plus d'informations sur l'utilisation de cette API.
Autorisations
syncFileSystem
Types
ConflictResolutionPolicy
Enum
"last_write_win"
"manual"
FileInfo
Propriétés
-
action
SyncAction facultatif
Action de synchronisation effectuée pour déclencher l'événement
onFileStatusChanged
. La valeur de l'action peut être'added'
,'updated'
ou'deleted'
. S'applique uniquement si l'état est'synced'
. -
direction
SyncDirection facultatif
Direction de la synchronisation pour l'événement
onFileStatusChanged
. La valeur de direction de la synchronisation peut être'local_to_remote'
ou'remote_to_local'
. S'applique uniquement si l'état est'synced'
. -
fileEntry
Entrée
fileEntry
pour le fichier cible dont l'état a changé. Contient le nom et le chemin d'accès du fichier synchronisé. Lors de la suppression d'un fichier, les informations surfileEntry
seront toujours disponibles, mais le fichier n'existera plus. -
status
État du fichier généré après l'événement
onFileStatusChanged
. La valeur de l'état peut être'synced'
,'pending'
ou'conflicting'
.
FileStatus
Enum
"synced"
Pas en conflit et ne comporte aucune modification locale en attente.
"pending"
Comporte une ou plusieurs modifications locales en attente qui n'ont pas été synchronisées.
"conflicting"
Le fichier est en conflit avec une version distante et doit être résolu manuellement.
FileStatusInfo
Propriétés
-
error
string facultatif
Erreur facultative qui n'est renvoyée que si un problème est survenu lors de la récupération de FileStatus pour le fichier donné.
-
fileEntry
Entrée
L'une des entrées initialement fournies à getFileStatuses.
-
status
La valeur de l'état peut être
'synced'
,'pending'
ou'conflicting'
.
ServiceInfo
Propriétés
-
description
chaîne
-
state
ServiceStatus
Enum
"initializing"
Le service de synchronisation est en cours d'initialisation (par exemple, restauration des données de la base de données, vérification de la connectivité et authentification au service, etc.).
"running"
Le service de synchronisation est opérationnel.
"authentication_required"
Le service de synchronisation ne synchronise pas les fichiers, car le service distant doit être authentifié par l'utilisateur pour continuer.
"temporaire_unavailable"
Le service de synchronisation ne synchronise pas les fichiers, car le service distant est (temporairement) indisponible en raison de certaines erreurs récupérables (réseau hors connexion, service distant ou inaccessible, etc.). Pour en savoir plus, utilisez le paramètre description
dans OnServiceInfoUpdated (qui peut contenir des détails spécifiques au service).
"désactivé"
Le service de synchronisation est désactivé et le contenu ne sera jamais synchronisé. Cela peut se produire lorsque l'utilisateur ne possède pas de compte sur le service distant ou que le service de synchronisation rencontre une erreur irrécupérable, par exemple.
StorageInfo
Propriétés
-
quotaBytes
number
-
usageBytes
number
SyncAction
Enum
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
Méthodes
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Récupère la règle actuelle de résolution des conflits.
Paramètres
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(policy: ConflictResolutionPolicy) => void
-
policy
-
Renvoie
-
Promise<ConflictResolutionPolicy>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
Renvoie la FileStatus
pour le fileEntry
donné. La valeur de l'état peut être 'synced'
, 'pending'
ou 'conflicting'
. Notez que l'état 'conflicting'
ne se produit que lorsque la règle de résolution des conflits du service est définie sur 'manual'
.
Paramètres
-
fileEntry
Entrée
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(status: FileStatus) => void
-
status
-
Renvoie
-
Promise<FileStatus>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
Renvoie chaque valeur FileStatus
pour le tableau fileEntry
donné. Généralement appelé avec le résultat de dirReader.readEntry().
Paramètres
-
fileEntries
objet[]
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(status: FileStatusInfo[]) => void
-
status
-
Renvoie
-
Promise<FileStatusInfo[]>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Renvoie l'état actuel du backend de synchronisation.
Paramètres
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(status: ServiceStatus) => void
-
status
-
Renvoie
-
Promise<ServiceStatus>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
Renvoie l'utilisation et le quota actuels (en octets) pour le stockage de fichiers 'syncable'
pour l'application.
Paramètres
-
fileSystem
DOMFileSystem
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(info: StorageInfo) => void
-
infos
-
Renvoie
-
Promise<StorageInfo>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Renvoie un système de fichiers synchronisé reposant sur Google Drive. L'instance DOMFileSystem
renvoyée peut être exploitée de la même manière que les systèmes de fichiers temporaires et persistants (voir http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
Si vous appelez cette méthode plusieurs fois depuis la même application, le même handle sera renvoyé au même système de fichiers.
Notez que cet appel peut échouer. (par exemple, si l'utilisateur n'est pas connecté à Chrome ou en l'absence d'opération réseau). Pour gérer ces erreurs, il est important que chrome.runtime.lastError soit vérifié dans le rappel.
Paramètres
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Renvoie
-
Promise<DOMFileSystem>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
)
Définit la règle de résolution des conflits par défaut pour le stockage de fichiers 'syncable'
pour l'application. Par défaut, elle est définie sur 'last_write_win'
. Lorsque la règle de résolution des conflits est définie sur 'last_write_win'
, les conflits pour des fichiers existants sont automatiquement résolus lors de la prochaine mise à jour du fichier. callback
peut être défini de manière facultative pour savoir si la requête a réussi ou non.
Paramètres
-
policy
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :() => void
Renvoie
-
Promise<void>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
Événements
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Déclenché lorsqu'un fichier a été mis à jour par le service de synchronisation en arrière-plan
Paramètres
-
rappel
function
Le paramètre
callback
se présente comme suit :(detail: FileInfo) => void
-
détails
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Déclenché lorsqu'une erreur ou un autre changement d'état s'est produit dans le backend de synchronisation (par exemple, lorsque la synchronisation est temporairement désactivée en raison d'une erreur d'authentification ou de réseau).
Paramètres
-
rappel
function
Le paramètre
callback
se présente comme suit :(detail: ServiceInfo) => void
-
détails
-