설명
chrome.syncFileSystem
API를 사용하여 Google Drive에 데이터를 저장하고 동기화합니다. 이 API는 Google 드라이브에 저장된 임의의 사용자 문서에 액세스하기 위한 것이 아닙니다. 오프라인 및 캐싱 사용을 위한 앱별 동기화 가능 저장소를 제공하므로 여러 클라이언트에서 동일한 데이터를 사용할 수 있습니다. 이 API 사용에 관한 자세한 내용은 데이터 관리를 참고하세요.
권한
syncFileSystem
유형
ConflictResolutionPolicy
열거형
"last_write_win"
FileInfo
속성
-
작업
SyncAction 선택사항
onFileStatusChanged
이벤트를 실행하기 위해 수행한 동기화 작업이 있습니다. 액션 값은'added'
,'updated'
또는'deleted'
일 수 있습니다. 상태가'synced'
인 경우에만 적용됩니다. -
direction
SyncDirection 선택사항
onFileStatusChanged
이벤트의 동기화 방향 동기화 방향 값은'local_to_remote'
또는'remote_to_local'
일 수 있습니다. 상태가'synced'
인 경우에만 적용됩니다. -
fileEntry
항목
상태가 변경된 대상 파일의
fileEntry
동기화된 파일의 이름과 경로 정보를 포함합니다. 파일을 삭제하면fileEntry
정보는 계속 사용할 수 있지만 파일은 더 이상 존재하지 않습니다. -
status
onFileStatusChanged
이벤트 후의 파일 상태 상태 값은'synced'
,'pending'
또는'conflicting'
일 수 있습니다.
FileStatus
열거형
"synced"
충돌하지 않고 대기 중인 로컬 변경사항이 없습니다.
"pending"
동기화되지 않은 대기 중인 로컬 변경사항이 하나 이상 있습니다.
"conflicting"
파일이 원격 버전과 충돌하므로 수동으로 해결해야 합니다.
FileStatusInfo
속성
-
error
문자열 선택사항
지정된 파일의 FileStatus를 가져오는 중에 문제가 발생한 경우에만 반환되는 오류입니다(선택사항).
-
fileEntry
항목
원래 getFileStatuses에 제공된 Entry의 하나입니다.
-
status
상태 값은
'synced'
,'pending'
또는'conflicting'
일 수 있습니다.
ServiceInfo
속성
-
설명
string
-
state
ServiceStatus
열거형
"initializing"
동기화 서비스를 초기화하는 중입니다 (예: 데이터베이스에서 데이터 복원, 서비스 연결 확인 및 인증 등).
"running"
동기화 서비스가 실행 중입니다.
"authentication_required"
계속하려면 사용자가 원격 서비스를 인증해야 하기 때문에 동기화 서비스가 파일을 동기화하고 있지 않습니다.
"temporary_unavailable"
복구 가능한 일부 오류(예: 네트워크가 오프라인 상태이거나 원격 서비스가 다운되었거나 연결할 수 없음)로 인해 원격 서비스를 (일시적으로) 사용할 수 없기 때문에 동기화 서비스가 파일을 동기화하지 않습니다. 자세한 내용은 OnServiceInfoUpdated의 description
매개변수로 제공해야 합니다(서비스별 세부정보가 포함될 수 있음).
"사용 중지됨"
동기화 서비스가 사용 중지되며 콘텐츠가 동기화되지 않습니다. 예를 들어 사용자에게 원격 서비스에 계정이 없거나 동기화 서비스에 복구할 수 없는 오류가 발생한 경우 이러한 상황이 발생할 수 있습니다.
StorageInfo
속성
-
quotaBytes
숫자
-
usageBytes
숫자
SyncAction
열거형
SyncDirection
열거형
"remote_to_local"
방법
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
현재 충돌 해결 정책을 가져옵니다.
매개변수
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(policy: ConflictResolutionPolicy) => void
-
policy
-
반환 값
-
Promise<ConflictResolutionPolicy>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
지정된 fileEntry
의 FileStatus
를 반환합니다. 상태 값은 'synced'
, 'pending'
또는 'conflicting'
일 수 있습니다. 'conflicting'
상태는 서비스의 충돌 해결 정책이 'manual'
로 설정된 경우에만 발생합니다.
매개변수
-
fileEntry
항목
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(status: FileStatus) => void
-
status
-
반환 값
-
Promise<FileStatus>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
지정된 fileEntry
배열의 각 FileStatus
을 반환합니다. 일반적으로 dirReader.readEntries()의 결과를 사용하여 호출됩니다.
매개변수
-
fileEntries
객체[]
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(status: FileStatusInfo[]) => void
-
status
-
반환 값
-
Promise<FileStatusInfo[]>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
현재 동기화 백엔드 상태를 반환합니다.
매개변수
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(status: ServiceStatus) => void
-
status
-
반환 값
-
Promise<ServiceStatus>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
앱의 'syncable'
파일 스토리지의 현재 사용량 및 할당량을 바이트 단위로 반환합니다.
매개변수
-
fileSystem
DOMFileSystem
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(info: StorageInfo) => void
-
정보
-
반환 값
-
Promise<StorageInfo>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Google Drive에서 지원하는 동기화 가능한 파일 시스템을 반환합니다. 반환된 DOMFileSystem
인스턴스는 임시 및 지속성 파일 시스템과 동일한 방식으로 작동할 수 있습니다 (http://dev.w3.org/2009/dap/file-system/file-dir-sys.html 참고).
동일한 앱에서 이 메서드를 여러 번 호출하면 동일한 파일 시스템에 동일한 핸들이 반환됩니다.
이 호출은 실패할 수 있습니다. 예를 들어 사용자가 Chrome에 로그인하지 않았거나 네트워크 작업이 없는 경우입니다. 이러한 오류를 처리하려면 콜백에서 chrome.runtime.lastError를 확인하는 것이 중요합니다.
매개변수
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
반환 값
-
Promise<DOMFileSystem>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
)
앱의 'syncable'
파일 저장소에 대한 기본 충돌 해결 정책을 설정합니다. 기본값은 'last_write_win'
입니다. 충돌 해결 정책이 'last_write_win'
(으)로 설정되면 기존 파일의 충돌은 다음에 파일을 업데이트할 때 자동으로 해결됩니다. 요청의 성공 여부를 알 수 있도록 선택적으로 callback
를 제공할 수 있습니다.
매개변수
-
policy
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 117 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
이벤트
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
백그라운드 동기화 서비스에 의해 파일이 업데이트되면 발생합니다.
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
동기화 백엔드에서 오류 또는 기타 상태 변경이 발생하면 (예: 네트워크 또는 인증 오류로 인해 동기화가 일시적으로 사용 중지된 경우) 실행됩니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(detail: ServiceInfo) => void
-
세부정보
-