Description
Utilisez l'API chrome.syncFileSystem
pour enregistrer et synchroniser des données dans Google Drive. Cette API n'est PAS destinée à accéder à des documents utilisateur arbitraires stockés dans Google Drive. Il fournit un espace de stockage synchronisable spécifique à l'application pour l'utilisation hors connexion et le stockage en cache, afin que les mêmes données puissent être disponibles pour différents clients. Pour en savoir plus sur l'utilisation de cette API, consultez Gérer les données.
Autorisations
syncFileSystem
Types
ConflictResolutionPolicy
Énumération
"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'
. Ne s'applique que si l'état est'synced'
. -
direction
SyncDirection facultatif
Sens de synchronisation de l'événement
onFileStatusChanged
. La valeur de la direction de synchronisation peut être'local_to_remote'
ou'remote_to_local'
. Ne s'applique que si l'état est'synced'
. -
fileEntry
Entrée
fileEntry
pour le fichier cible dont l'état a changé. Inclut le nom et le chemin d'accès du fichier synchronisé. Lors de la suppression du fichier, les informationsfileEntry
restent disponibles, mais le fichier n'existe plus. -
état
État du fichier obtenu après l'événement
onFileStatusChanged
. La valeur d'état peut être'synced'
,'pending'
ou'conflicting'
.
FileStatus
Énumération
"synced" (synchronisé)
Pas de conflit et aucune modification locale en attente.
"pending"
Contient une ou plusieurs modifications locales en attente qui n'ont pas été synchronisées.
"conflicting"
Le fichier est en conflit avec la version distante et doit être résolu manuellement.
FileStatusInfo
Propriétés
-
erreur
chaîne 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 attribuées à getFileStatuses.
-
état
La valeur d'état peut être
'synced'
,'pending'
ou'conflicting'
.
ServiceInfo
Propriétés
-
description
chaîne
-
state
ServiceStatus
Énumération
"initializing"
Le service de synchronisation est en cours d'initialisation (par exemple, restauration des données à partir de la base de données, vérification de la connectivité et authentification auprès du service, etc.).
"running"
Le service de synchronisation est opérationnel.
"authentication_required"
Le service de synchronisation ne synchronise pas les fichiers, car l'utilisateur doit authentifier le service distant pour continuer.
"temporary_unavailable"
Le service de synchronisation ne synchronise pas les fichiers, car le service distant est (temporairement) indisponible en raison d'erreurs récupérables (par exemple, le réseau est hors connexion, le service distant est en panne ou n'est pas accessible, etc.). Des informations supplémentaires doivent être fournies par le paramètre description
dans OnServiceInfoUpdated (qui peut contenir des informations spécifiques au service).
"disabled"
Le service de synchronisation est désactivé et le contenu ne sera jamais synchronisé. (par exemple, si l'utilisateur ne dispose pas de compte sur le service distant ou si le service de synchronisation a rencontré une erreur irrécupérable).
StorageInfo
Propriétés
-
quotaBytes
Nombre
-
usageBytes
Nombre
SyncAction
Énumération
"added"
"updated"
"deleted"
SyncDirection
Énumération
"local_to_remote"
"remote_to_local"
Méthodes
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Récupère la stratégie de résolution des conflits actuelle.
Paramètres
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(policy: ConflictResolutionPolicy) => void
-
policy
-
Renvoie
-
Promise<ConflictResolutionPolicy>
Chrome 117 ou version ultérieureLes 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 les FileStatus
pour le fileEntry
donné. La valeur d'état peut être 'synced'
, 'pending'
ou 'conflicting'
. Notez que l'état 'conflicting'
ne se produit que lorsque la stratégie de résolution des conflits du service est définie sur 'manual'
.
Paramètres
-
fileEntry
Entrée
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(status: FileStatus) => void
-
état
-
Renvoie
-
Promise<FileStatus>
Chrome 117 ou version ultérieureLes 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 FileStatus
pour le tableau fileEntry
donné. Appelé généralement avec le résultat de dirReader.readEntries().
Paramètres
-
fileEntries
object[]
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(status: FileStatusInfo[]) => void
-
état
-
Renvoie
-
Promise<FileStatusInfo[]>
Chrome 117 ou version ultérieureLes 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 facultatif
Le paramètre
callback
se présente comme suit :(status: ServiceStatus) => void
-
état
-
Renvoie
-
Promise<ServiceStatus>
Chrome 117 ou version ultérieureLes 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'
de l'application.
Paramètres
-
fileSystem
DOMFileSystem
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(info: StorageInfo) => void
-
infos
-
Renvoie
-
Promise<StorageInfo>
Chrome 117 ou version ultérieureLes 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 synchronisable compatible avec Google Drive. L'instance DOMFileSystem
renvoyée peut être utilisé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 à partir de la même application, le même gestionnaire sera renvoyé vers le même système de fichiers.
Notez que cet appel peut échouer. Par exemple, si l'utilisateur n'est pas connecté à Chrome ou s'il n'y a aucune opération réseau. Pour gérer ces erreurs, il est important de vérifier chrome.runtime.lastError dans le rappel.
Paramètres
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
Renvoie
-
Promise<DOMFileSystem>
Chrome 117 ou version ultérieureLes 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 stratégie de résolution des conflits par défaut pour l'espace de stockage de fichiers 'syncable'
de l'application. Par défaut, il est défini sur 'last_write_win'
. Lorsque la stratégie de résolution des conflits est définie sur 'last_write_win'
, les conflits liés aux fichiers existants sont automatiquement résolus la prochaine fois que le fichier est mis à jour. callback
peut être fourni pour savoir si la requête a abouti ou non.
Paramètres
-
policy
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :() => void
Renvoie
-
Promise<void>
Chrome 117 ou version ultérieureLes 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
fonction
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 de réseau ou d'authentification).
Paramètres
-
rappel
fonction
Le paramètre
callback
se présente comme suit :(detail: ServiceInfo) => void
-
détails
-