chrome.syncFileSystem

Description

Utilisez l'API chrome.syncFileSystem pour enregistrer et synchroniser des données sur Google Drive. Cette API ne permet PAS d'accéder à des documents utilisateur arbitraires stockés dans Google Drive. Il fournit un espace de stockage spécifique à l'application pouvant être synchronisé pour l'utilisation hors connexion et la mise en cache, afin que les mêmes données puissent être disponibles sur 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"

"manuelle"

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 du sens de 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é. Après la suppression du fichier, les informations sur le fileEntry resteront disponibles, mais le fichier n'existe plus.

  • état

    État du fichier généré après l'événement onFileStatusChanged. La valeur de l'état peut être 'synced', 'pending' ou 'conflicting'.

FileStatus

Énumération

"synced"
Aucun conflit et aucune modification locale en attente.

"pending"
Contient une ou plusieurs modifications locales en attente qui n'ont pas été synchronisées.

"conflit"
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 qu'en cas de problème lors de la récupération de l'élément FileStatus pour le fichier donné.

  • fileEntry

    Entrée

    L'un des éléments Entry est initialement attribué à getFileStatuses.

  • état

    La valeur de l'état peut être 'synced', 'pending' ou 'conflicting'.

ServiceInfo

Propriétés

ServiceStatus

Énumération

"initialisation"
Le service de synchronisation est en cours d'initialisation (ex. : restauration des données 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.

"Temporaire_unavailable"
Le service de synchronisation ne synchronise pas les fichiers, car le service distant est temporairement indisponible en raison d'erreurs récupérables, comme le réseau est hors connexion, le service distant est hors service ou inaccessible, etc. Le paramètre description dans OnServiceInfoUpdated (qui peut contenir des détails spécifiques au service) doit fournir des informations supplémentaires.

"désactivé"
Le service de synchronisation est désactivé, et le contenu ne sera jamais synchronisé. (Cela peut se produire lorsque l'utilisateur n'a pas de compte sur le service distant ou lorsque le service de synchronisation rencontre une erreur irrécupérable.)

StorageInfo

Propriétés

  • quotaBytes

    Nombre

  • usageBytes

    Nombre

SyncAction

Énumération

"ajouté"

"mis à jour"

"supprimé"

SyncDirection

Énumération

"local_to_remote"

"remote_to_local"

Méthodes

getConflictResolutionPolicy()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.getConflictResolutionPolicy(
  callback?: function,
)

Récupère la règle actuelle de résolution des conflits.

Paramètres

Renvoie

  • Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getFileStatus()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.getFileStatus(
  fileEntry: Entry,
  callback?: function,
)

Renvoie le 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

    function facultatif

    Le paramètre callback se présente comme suit:

    (status: FileStatus) => void

Renvoie

  • Promise&lt;FileStatus&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getFileStatuses()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.getFileStatuses(
  fileEntries: object[],
  callback?: function,
)

Renvoie chaque FileStatus pour le tableau fileEntry donné. Généralement appelé avec le résultat de dirReader.readEntries().

Paramètres

  • fileEntries

    object[]

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (status: FileStatusInfo[]) => void

Renvoie

  • Promise&lt;FileStatusInfo[]&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getServiceStatus()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.getServiceStatus(
  callback?: function,
)

Renvoie l'état actuel du backend de synchronisation.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (status: ServiceStatus) => void

Renvoie

  • Promise&lt;ServiceStatus&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getUsageAndQuota()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.getUsageAndQuota(
  fileSystem: DOMFileSystem,
  callback?: function,
)

Renvoie l'utilisation actuelle et le quota (en octets) associés au stockage de fichiers 'syncable' pour l'application.

Paramètres

  • fileSystem

    DOMFileSystem

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (info: StorageInfo) => void

Renvoie

  • Promise&lt;StorageInfo&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

requestFileSystem()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.syncFileSystem.requestFileSystem(
  callback?: function,
)

Affiche un système de fichiers pouvant être synchronisé et sauvegardé par 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 permanents (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 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 s'il n'y a aucun fonctionnement réseau). Pour gérer ces erreurs, il est important que chrome.runtime.lastError soit vérifié dans le rappel.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (fileSystem: DOMFileSystem) => void

    • fileSystem

      DOMFileSystem

Renvoie

  • Promise&lt;DOMFileSystem&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setConflictResolutionPolicy()

<ph type="x-smartling-placeholder"></ph> Promesse
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, il est défini sur 'last_write_win'. Si la règle de résolution des conflits est définie sur 'last_write_win', les conflits concernant les fichiers existants sont automatiquement résolus lors de la prochaine mise à jour du fichier. callback peut éventuellement être indiqué pour savoir si la requête a abouti ou non.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    () => void

Renvoie

  • Promesse<void>

    Chrome 117 ou version ultérieure

    Les 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

onServiceStatusChanged

chrome.syncFileSystem.onServiceStatusChanged.addListener(
  callback: function,
)

Déclenché lorsqu'une erreur ou une autre modification de l'état s'est produite 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