説明
chrome.syncFileSystem API を使用して、Google ドライブにデータを保存し、同期します。この API は、Google ドライブに保存されている任意のユーザー ドキュメントにアクセスするためのものではありません。オフラインとキャッシュ保存の使用のためにアプリ固有の同期可能なストレージを提供し、同じデータをさまざまなクライアントで利用できるようにします。この API の使用方法については、データを管理するをご覧ください。
権限
syncFileSystem型
ConflictResolutionPolicy
列挙型
"last_write_win" 
 
"manual" 
 
FileInfo
プロパティ
- 
    アクションSyncAction 省略可 onFileStatusChangedイベントを発生させるために実行された同期アクション。アクション値は、'added'、'updated'、'deleted'のいずれかです。ステータスが'synced'の場合にのみ適用されます。
- 
    directionSyncDirection 省略可 onFileStatusChangedイベントの同期方向。同期方向の値は'local_to_remote'または'remote_to_local'です。ステータスが'synced'の場合にのみ適用されます。
- 
    fileEntryエントリ ステータスが変更されたターゲット ファイルの fileEntry。同期されたファイルの名前とパスの情報が含まれます。ファイルを削除しても、fileEntry情報は引き続き利用できますが、ファイルは存在しなくなります。
- 
    ステータスonFileStatusChangedイベント後のファイル ステータス。ステータス値は'synced'、'pending'、'conflicting'のいずれかになります。
FileStatus
列挙型
「同期済み」 
 競合がなく、ローカルの変更が保留されていない。
「pending」 
 同期されていない保留中のローカル変更が 1 つ以上あります。
「conflicting」 
 ファイルがリモート バージョンと競合しているため、手動で解決する必要があります。
FileStatusInfo
プロパティ
- 
    エラー文字列 省略可 指定されたファイルの FileStatus の取得中に問題が発生した場合にのみ返されるオプションのエラー。 
- 
    fileEntryエントリ getFileStatuses に最初に指定された Entry のいずれか。 
- 
    ステータスステータス値は 'synced'、'pending'、'conflicting'のいずれかになります。
ServiceInfo
プロパティ
- 
    description文字列 
- 
    state
ServiceStatus
列挙型
「初期化中」 
 同期サービスが初期化されています(データベースからのデータの復元、接続の確認、サービスへの認証など)。
「running」 
 同期サービスが稼働しています。
"authentication_required" 
 続行するにはリモート サービスをユーザーが認証する必要があるため、同期サービスがファイルを同期していません。
「temporary_unavailable」 
 リモート サービスが(一時的に)利用できないため、同期サービスはファイルを同期していません。これは、ネットワークがオフラインである、リモート サービスがダウンしている、リモート サービスにアクセスできないなど、復元可能なエラーが原因です。詳細については、OnServiceInfoUpdated の description パラメータで確認してください(サービス固有の詳細が含まれている可能性があります)。
「disabled」 
 同期サービスが無効になっており、コンテンツは同期されません。(たとえば、ユーザーがリモート サービスにアカウントを持っていない場合や、同期サービスで回復不能なエラーが発生した場合に、このエラーが発生することがあります)。
StorageInfo
プロパティ
- 
    quotaBytes数値 
- 
    usageBytes数値 
SyncAction
列挙型
"added" 
 
"updated" 
 
"deleted" 
 
SyncDirection
列挙型
"local_to_remote" 
 
"remote_to_local" 
 
メソッド
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
現在の競合解決ポリシーを取得します。
パラメータ
- 
    callback関数 省略可 callbackパラメータは次のようになります。(policy: ConflictResolutionPolicy) =& gt;void 
戻り値
- 
            Promise<ConflictResolutionPolicy> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
指定された fileEntry の FileStatus を返します。ステータス値は 'synced'、'pending'、'conflicting' のいずれかになります。'conflicting' 状態は、サービスの競合解決ポリシーが 'manual' に設定されている場合にのみ発生します。
パラメータ
- 
    fileEntryエントリ 
- 
    callback関数 省略可 callbackパラメータは次のようになります。(status: FileStatus) =& gt;void - 
    ステータス
 
- 
    
戻り値
- 
            Promise<FileStatus> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
指定された fileEntry 配列の各 FileStatus を返します。通常は、dirReader.readEntries() の結果とともに呼び出されます。
パラメータ
- 
    fileEntriesobject[] 
- 
    callback関数 省略可 callbackパラメータは次のようになります。(status: FileStatusInfo[]) =& gt;void - 
    ステータス
 
- 
    
戻り値
- 
            Promise<FileStatusInfo[]> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
現在の同期バックエンドのステータスを返します。
パラメータ
- 
    callback関数 省略可 callbackパラメータは次のようになります。(status: ServiceStatus) =& gt;void - 
    ステータス
 
- 
    
戻り値
- 
            Promise<ServiceStatus> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
アプリの 'syncable' ファイル ストレージの現在の使用量と割り当てをバイト単位で返します。
パラメータ
- 
    fileSystemDOMFileSystem 
- 
    callback関数 省略可 callbackパラメータは次のようになります。(info: StorageInfo) =& gt;void - 
    情報
 
- 
    
戻り値
- 
            Promise<StorageInfo> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Google ドライブによってバックアップされた同期可能なファイル システムを返します。返された DOMFileSystem インスタンスは、一時ファイル システムと永続ファイル システムと同じ方法で操作できます(http://dev.w3.org/2009/dap/file-system/file-dir-sys.html を参照)。
同じアプリから複数回呼び出すと、同じファイル システムへの同じハンドルが返されます。
この呼び出しは失敗する可能性があります。たとえば、ユーザーが Chrome にログインしていない場合や、ネットワーク オペレーションがない場合などです。これらのエラーに対処するには、コールバックで chrome.runtime.lastError を確認することが重要です。
パラメータ
- 
    callback関数 省略可 callbackパラメータは次のようになります。(fileSystem: DOMFileSystem) =& gt;void - 
    fileSystemDOMFileSystem 
 
- 
    
戻り値
- 
            Promise<DOMFileSystem> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
アプリの 'syncable' ファイル ストレージのデフォルトの競合解決ポリシーを設定します。デフォルトでは 'last_write_win' に設定されています。競合解決ポリシーが 'last_write_win' に設定されている場合、既存のファイルの競合は、次回ファイルが更新されるときに自動的に解決されます。リクエストが成功したかどうかを確認するために、必要に応じて callback を指定できます。
パラメータ
- 
    callback関数 省略可 callbackパラメータは次のようになります。() =& gt;void 
戻り値
- 
            Promise<void> Chrome 117 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。 
イベント
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
バックグラウンド同期サービスによってファイルが更新されたときに発生します。
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
同期バックエンドでエラーやその他のステータスの変更が発生したときに(ネットワーク エラーや認証エラーにより同期が一時的に無効になった場合など)発生します。
パラメータ
- 
    callback関数 callbackパラメータは次のようになります。(detail: ServiceInfo) =& gt;void - 
    詳細
 
-