chrome.syncFileSystem

شرح

از chrome.syncFileSystem API برای ذخیره و همگام سازی داده ها در Google Drive استفاده کنید. این API برای دسترسی به اسناد کاربر دلخواه ذخیره شده در Google Drive نیست. این برنامه فضای ذخیره‌سازی همگام‌سازی خاص را برای استفاده آفلاین و حافظه پنهان فراهم می‌کند تا داده‌های یکسانی در میان کلاینت‌های مختلف در دسترس باشد. برای اطلاعات بیشتر در مورد استفاده از این API ، مدیریت داده را بخوانید.

مجوزها

syncFileSystem

انواع

ConflictResolutionPolicy

Enum

"آخرین_نوشتن_برد"

"کتابچه راهنمای"

FileInfo

خواص

  • عمل

    SyncAction اختیاری است

    همگام سازی اقدام انجام شده برای فعال کردن رویداد onFileStatusChanged . مقدار عمل را می توان 'added' ، 'updated' یا 'deleted' کرد. فقط در صورتی اعمال می شود که وضعیت 'synced' باشد.

  • جهت

    SyncDirection اختیاری است

    جهت همگام سازی رویداد onFileStatusChanged . مقدار جهت همگام‌سازی می‌تواند 'local_to_remote' یا 'remote_to_local' باشد. فقط در صورتی اعمال می شود که وضعیت 'synced' باشد.

  • ورودی فایل

    ورود

    fileEntry برای فایل مورد نظر که وضعیت آن تغییر کرده است. حاوی اطلاعات نام و مسیر فایل همگام شده است. در صورت حذف فایل، اطلاعات fileEntry همچنان در دسترس خواهد بود اما فایل دیگر وجود نخواهد داشت.

  • وضعیت فایل حاصل پس از رویداد onFileStatusChanged . مقدار وضعیت می تواند 'synced' ، 'pending' یا 'conflicting' باشد.

FileStatus

Enum

"همگام سازی شده"
متناقض نیست و تغییرات محلی معلق ندارد.

"انتظار"
یک یا چند تغییر محلی معلق دارد که همگام‌سازی نشده‌اند.

"تضاد"
فایل با نسخه راه دور تداخل دارد و باید به صورت دستی حل شود.

FileStatusInfo

خواص

  • خطا

    رشته اختیاری

    خطای اختیاری که فقط در صورت بروز مشکل در بازیابی وضعیت FileStatus برای فایل داده شده برمی گردد.

  • ورودی فایل

    ورود

    یکی از ورودی هایی که در اصل به getFileStatuses داده شده است.

  • مقدار وضعیت می تواند 'synced' ، 'pending' یا 'conflicting' باشد.

ServiceInfo

خواص

ServiceStatus

Enum

"ابتدایی"
سرویس همگام سازی در حال تنظیم اولیه است (به عنوان مثال بازیابی داده ها از پایگاه داده، بررسی اتصال و احراز هویت به سرویس و غیره).

"دویدن"
سرویس همگام سازی فعال است.

"Authentication_required"
سرویس همگام‌سازی فایل‌ها را همگام‌سازی نمی‌کند زیرا برای ادامه سرویس از راه دور باید توسط کاربر احراز هویت شود.

"موقتی_غیرقابل دسترس"
سرویس همگام‌سازی فایل‌ها را همگام‌سازی نمی‌کند زیرا سرویس راه دور (به طور موقت) به دلیل برخی از خطاهای قابل بازیابی در دسترس نیست، به عنوان مثال شبکه آفلاین است، سرویس راه دور خاموش است یا قابل دسترسی نیست و غیره. جزئیات بیشتر باید با پارامتر description در OnServiceInfoUpdated داده شود (که می‌تواند حاوی جزئیات خدمات خاص).

"معلول"
سرویس همگام‌سازی غیرفعال است و محتوا هرگز همگام‌سازی نمی‌شود. (به عنوان مثال، این ممکن است زمانی اتفاق بیفتد که کاربر هیچ حساب کاربری در سرویس راه دور نداشته باشد یا سرویس همگام‌سازی یک خطای غیرقابل جبران داشته باشد.)

StorageInfo

خواص

  • quotaBytes

    عدد

  • usageBytes

    عدد

SyncAction

Enum

"اضافه"

"به روز شده"

"حذف شده"

SyncDirection

Enum

"local_to_remote"

"Remote_to_local"

مواد و روش ها

getConflictResolutionPolicy()

وعده
chrome.syncFileSystem.getConflictResolutionPolicy(
  callback?: function,
)

خط مشی حل تعارض فعلی را دریافت می کند.

مولفه های

برمی گرداند

  • Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getFileStatus()

وعده
chrome.syncFileSystem.getFileStatus(
  fileEntry: Entry,
  callback?: function,
)

FileStatus را برای fileEntry داده شده برمی گرداند. مقدار وضعیت می تواند 'synced' ، 'pending' یا 'conflicting' باشد. توجه داشته باشید که حالت 'conflicting' تنها زمانی اتفاق می‌افتد که خط‌مشی حل تعارض سرویس روی 'manual' تنظیم شود.

مولفه های

  • ورودی فایل

    ورود

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (status: FileStatus)=>void

برمی گرداند

  • Promise< FileStatus >

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getFileStatuses()

وعده
chrome.syncFileSystem.getFileStatuses(
  fileEntries: object[],
  callback?: function,
)

هر FileStatus برای آرایه fileEntry داده شده برمی گرداند. معمولاً با نتیجه () dirReader.readEntries فراخوانی می شود.

مولفه های

  • ورودی های فایل

    هدف - شی[]

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (status: FileStatusInfo[])=>void

برمی گرداند

  • Promise< FileStatusInfo []>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getServiceStatus()

وعده
chrome.syncFileSystem.getServiceStatus(
  callback?: function,
)

وضعیت فعلی همگام سازی باطن را برمی گرداند.

مولفه های

برمی گرداند

  • Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getUsageAndQuota()

وعده
chrome.syncFileSystem.getUsageAndQuota(
  fileSystem: DOMFileSystem,
  callback?: function,
)

میزان مصرف فعلی و سهمیه ذخیره‌سازی فایل 'syncable' برنامه را بر حسب بایت برمی‌گرداند.

مولفه های

  • فایل سیستم

    DOMFileSystem

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (info: StorageInfo)=>void

برمی گرداند

  • Promise< StorageInfo >

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

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

    • فایل سیستم

      DOMFileSystem

برمی گرداند

  • Promise<DOMFileSystem>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

setConflictResolutionPolicy()

وعده
chrome.syncFileSystem.setConflictResolutionPolicy(
  policy: ConflictResolutionPolicy,
  callback?: function,
)

خط مشی پیش‌فرض حل تعارض را برای ذخیره‌سازی فایل 'syncable' برای برنامه تنظیم می‌کند. به طور پیش فرض روی 'last_write_win' تنظیم شده است. هنگامی که خط مشی حل تداخل روی 'last_write_win' تنظیم می شود، تداخل فایل های موجود دفعه بعد که فایل به روز می شود به طور خودکار حل می شود. callback می توان به صورت اختیاری برای دانستن اینکه آیا درخواست موفقیت آمیز بوده است یا خیر داده می شود.

مولفه های

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    ()=>void

برمی گرداند

  • قول<باطل>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

مناسبت ها

onFileStatusChanged

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

هنگامی که یک فایل توسط سرویس همگام سازی پس زمینه به روز شده است فعال می شود.

مولفه های

onServiceStatusChanged

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

زمانی فعال می شود که یک خطا یا تغییر وضعیت دیگر در باطن همگام سازی اتفاق افتاده باشد (به عنوان مثال، زمانی که همگام سازی به طور موقت به دلیل شبکه یا خطای احراز هویت غیرفعال شود).

مولفه های

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (detail: ServiceInfo)=>void