คำอธิบาย
ใช้ chrome.syncFileSystem
API เพื่อบันทึกและซิงค์ข้อมูลใน Google ไดรฟ์ 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"
มีการเปลี่ยนแปลงในเครื่องที่รอดำเนินการอย่างน้อย 1 รายการที่ยังไม่ได้ซิงค์
"conflicting"
ไฟล์ขัดแย้งกับเวอร์ชันระยะไกลและต้องแก้ไขด้วยตนเอง
FileStatusInfo
พร็อพเพอร์ตี้
-
error
string ไม่บังคับ
ข้อผิดพลาดที่ไม่บังคับซึ่งจะแสดงหากมีปัญหาในการดึงข้อมูล FileStatus ของไฟล์ที่ระบุเท่านั้น
-
fileEntry
ตั๋วเข้าชม
หนึ่งในรายการมอบให้กับ getFileStatuses ในตอนแรก
-
status
ค่าสถานะอาจเป็น
'synced'
,'pending'
หรือ'conflicting'
ServiceInfo
พร็อพเพอร์ตี้
-
คำอธิบาย
string
-
state
ServiceStatus
ค่าแจกแจง
"initializing"
กำลังเริ่มต้นบริการซิงค์ (เช่น กู้คืนข้อมูลจากฐานข้อมูล ตรวจสอบการเชื่อมต่อ และตรวจสอบสิทธิ์กับบริการ เป็นต้น)
"running"
บริการซิงค์ทำงานแล้ว
"authentication_required"
บริการซิงค์ไม่ซิงค์ไฟล์ เนื่องจากบริการระยะไกลต้องผ่านการตรวจสอบสิทธิ์โดยผู้ใช้เพื่อดำเนินการต่อ
"temporary_unavailable"
บริการซิงค์ไม่ซิงค์ข้อมูลไฟล์เนื่องจากบริการระยะไกลไม่พร้อมใช้งาน (ชั่วคราว) เนื่องจากข้อผิดพลาดบางอย่างที่กู้คืนได้ เช่น เครือข่ายออฟไลน์อยู่ บริการระยะไกลไม่ทำงาน หรือเข้าถึงไม่ได้ เป็นต้น ทั้งนี้ควรระบุรายละเอียดเพิ่มเติมโดยพารามิเตอร์ description
ใน OnServiceInfoUpdated (ซึ่งอาจมีรายละเอียดเฉพาะบริการ)
"disable"
บริการซิงค์ถูกปิดใช้งานและจะไม่มีการซิงค์เนื้อหา (เช่น กรณีนี้อาจเกิดขึ้นเมื่อผู้ใช้ไม่มีบัญชีในบริการระยะไกลหรือบริการซิงค์มีข้อผิดพลาดที่กู้คืนไม่ได้)
StorageInfo
พร็อพเพอร์ตี้
-
quotaBytes
ตัวเลข
-
usageBytes
ตัวเลข
SyncAction
ค่าแจกแจง
SyncDirection
ค่าแจกแจง
"local_to_remote"
"remote_to_local"
วิธีการ
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
รับนโยบายการแก้ไขข้อขัดแย้งปัจจุบัน
พารามิเตอร์
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(policy: ConflictResolutionPolicy) => void
-
policy
-
การคืนสินค้า
-
Promise<ConflictResolutionPolicy>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
แสดงผล FileStatus
สำหรับ fileEntry
ที่ระบุ ค่าสถานะอาจเป็น 'synced'
, 'pending'
หรือ 'conflicting'
โปรดทราบว่าสถานะ 'conflicting'
จะเกิดขึ้นเมื่อตั้งค่านโยบายการแก้ไขความขัดแย้งของบริการเป็น 'manual'
เท่านั้น
พารามิเตอร์
-
fileEntry
ตั๋วเข้าชม
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(status: FileStatus) => void
-
status
-
การคืนสินค้า
-
Promise<FileStatus>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
แสดงผล FileStatus
แต่ละรายการสำหรับอาร์เรย์ fileEntry
ที่ระบุ โดยปกติแล้วเรียกใช้ด้วยผลลัพธ์จาก dirReader.readEntries()
พารามิเตอร์
-
fileEntries
ออบเจ็กต์[]
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(status: FileStatusInfo[]) => void
-
status
-
การคืนสินค้า
-
Promise<FileStatusInfo[]>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
แสดงสถานะแบ็กเอนด์การซิงค์ปัจจุบัน
พารามิเตอร์
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(status: ServiceStatus) => void
-
status
-
การคืนสินค้า
-
Promise<ServiceStatus>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
แสดงผลการใช้งานปัจจุบันและโควต้าเป็นไบต์สำหรับการจัดเก็บไฟล์ 'syncable'
สำหรับแอป
พารามิเตอร์
-
fileSystem
DOMFileSystem
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(info: StorageInfo) => void
-
ข้อมูล
-
การคืนสินค้า
-
Promise<StorageInfo>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
แสดงผลระบบไฟล์ที่ซิงค์ได้ซึ่งสนับสนุนโดย Google ไดรฟ์ อินสแตนซ์ DOMFileSystem
ที่ส่งกลับจะสามารถทำงานได้ในลักษณะเดียวกับระบบไฟล์ชั่วคราวและถาวร (โปรดดู http://dev.w3.org/2009/dap/file-system/file-dir-sys.html)
การเรียกใช้หลายครั้งจากแอปเดียวกันจะนำแฮนเดิลเดียวกันไปยังระบบไฟล์เดียวกัน
โปรดทราบว่าการโทรนี้อาจล้มเหลว ตัวอย่างเช่น หากผู้ใช้ไม่ได้ลงชื่อเข้าใช้ Chrome หรือไม่มีการดำเนินการของเครือข่าย ในการจัดการข้อผิดพลาดเหล่านี้ จะต้องมีการตรวจสอบ chrome.runtime.lastError ในการเรียกกลับ
พารามิเตอร์
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
การคืนสินค้า
-
Promise<DOMFileSystem>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
)
ตั้งค่านโยบายการแก้ปัญหาความขัดแย้งเริ่มต้นสำหรับพื้นที่เก็บข้อมูลไฟล์ 'syncable'
ของแอป ระบบจะตั้งค่าเริ่มต้นเป็น 'last_write_win'
เมื่อตั้งค่านโยบายการแก้ไขความขัดแย้งเป็น 'last_write_win'
ความขัดแย้งสำหรับไฟล์ที่มีอยู่จะได้รับการแก้ไขโดยอัตโนมัติในครั้งถัดไปที่อัปเดตไฟล์ โดยคุณสามารถเลือกให้ callback
ทราบว่าคำขอดำเนินการสำเร็จหรือไม่
พารามิเตอร์
-
policy
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
กิจกรรม
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่อไฟล์ได้รับการอัปเดตโดยบริการซิงค์เบื้องหลัง
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(detail: FileInfo) => void
-
รายละเอียด
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่อมีข้อผิดพลาดหรือการเปลี่ยนสถานะอื่นๆ เกิดขึ้นในแบ็กเอนด์การซิงค์ (เช่น เมื่อปิดใช้การซิงค์ชั่วคราวเนื่องจากเครือข่ายหรือเกิดข้อผิดพลาดในการตรวจสอบสิทธิ์)
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(detail: ServiceInfo) => void
-
รายละเอียด
-