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