chrome.fileSystemProvider

توضیحات

از API مربوط به chrome.fileSystemProvider برای ایجاد سیستم‌های فایلی استفاده کنید که از طریق مدیریت فایل در سیستم‌عامل کروم قابل دسترسی باشند.

مجوزها

fileSystemProvider

در دسترس بودن

فقط سیستم عامل کروم

مانیفست

برای استفاده از رابط برنامه‌نویسی کاربردی ارائه‌دهنده سیستم فایل (File System Provider API)، باید مجوز و بخش "fileSystemProvider" را در فایل مانیفست تعریف کنید. برای مثال:

{
  "name": "My extension",
  ...
  "permissions": [
    "fileSystemProvider"
  ],
  ...
  "file_system_provider_capabilities": {
    "configurable": true,
    "watchable": false,
    "multiple_mounts": true,
    "source": "network"
  },
  ...
}

بخش file_system_provider باید به صورت زیر تعریف شود:

configurable (بولی) - اختیاری
اینکه آیا پیکربندی از طریق onConfigureRequested پشتیبانی می‌شود یا خیر. به طور پیش‌فرض: false.
multiple_mounts (بولی) - اختیاری
اینکه آیا چندین (بیش از یک) سیستم فایل نصب شده پشتیبانی می‌شوند یا خیر. به طور پیش‌فرض: نادرست.
watchable (بولی) - اختیاری
اینکه آیا تنظیم ناظران و اطلاع‌رسانی در مورد تغییرات پشتیبانی می‌شود یا خیر. به طور پیش‌فرض: نادرست.
source (تعدادی از "فایل"، "دستگاه" یا "شبکه") - مورد نیاز
منبع داده برای سیستم فایل های نصب شده.

برنامه Files از اطلاعات فوق برای رندر کردن مناسب عناصر رابط کاربری مرتبط استفاده می‌کند. برای مثال، اگر configurable روی true تنظیم شده باشد، یک آیتم منو برای پیکربندی volumeها رندر می‌شود. به طور مشابه، اگر multiple_mounts روی true تنظیم شده باشد، برنامه Files اجازه می‌دهد بیش از یک نقطه اتصال از رابط کاربری اضافه کند. اگر watchable روی false تنظیم شده باشد، یک دکمه refresh رندر می‌شود. توجه داشته باشید که در صورت امکان، باید پشتیبانی از watcherها را اضافه کنید تا تغییرات در سیستم فایل بلافاصله و به طور خودکار منعکس شوند.

نمای کلی

رابط برنامه‌نویسی کاربردی ارائه‌دهنده سیستم فایل (File System Provider API) به افزونه‌ها اجازه می‌دهد تا از سیستم‌های فایل مجازی پشتیبانی کنند، که در مدیریت فایل در ChromeOS در دسترس هستند. موارد استفاده شامل خارج کردن آرشیوها از حالت فشرده و دسترسی به فایل‌ها در یک سرویس ابری غیر از Drive است.

نصب سیستم فایل‌ها

ارائه افزونه‌ها می‌تواند محتویات سیستم فایل را از یک منبع خارجی (مانند یک سرور از راه دور یا یک دستگاه USB) یا با استفاده از یک فایل محلی (مانند یک بایگانی) به عنوان ورودی آن فراهم کند.

برای نوشتن سیستم‌های فایلی که کنترل‌کننده‌های فایل هستند (منبع "file" است)، ارائه‌دهنده باید یک برنامه‌ی بسته‌بندی‌شده باشد، زیرا رویداد onLaunched برای افزونه‌ها در دسترس نیست.

اگر منبع شبکه یا یک دستگاه باشد، سیستم فایل باید هنگام فراخوانی رویداد onMountRequested نصب شود.

منبع داده‌های سیستم فایل نقطه ورود
"file" فقط برای برنامه‌های بسته‌بندی‌شده موجود است.
"device" یا "network" onMountدرخواست شده

پیکربندی سیستم‌های فایل

سیستم‌های فایل ارائه شده پس از نصب می‌توانند از طریق رویداد onConfigureRequested پیکربندی شوند. این رویداد به ویژه برای سیستم‌های فایلی که محتوا را از طریق شبکه ارائه می‌دهند، به منظور تنظیم اعتبارنامه‌های مناسب مفید است. مدیریت این رویداد اختیاری است.

چرخه زندگی

سیستم‌های فایل ارائه شده پس از نصب، توسط کروم به خاطر سپرده می‌شوند و پس از راه‌اندازی مجدد یا ری‌استارت، به طور خودکار دوباره نصب می‌شوند. از این رو، هنگامی که یک سیستم فایل توسط یک افزونه ارائه شده نصب می‌شود، تا زمانی که افزونه از حالت بارگذاری خارج نشود یا افزونه متد unmount را فراخوانی کند، باقی می‌ماند.

انواع

AbortRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست عملیات

    شماره

    شناسه درخواستی که قرار است لغو شود.

  • شناسه درخواست

    شماره

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

Action

کروم ۴۵+

خواص

  • شناسه

    رشته

    شناسه‌ی عمل. هر رشته یا CommonActionId برای اعمال رایج.

  • عنوان

    رشته اختیاری

    عنوان اقدام. ممکن است برای اقدامات رایج نادیده گرفته شود.

AddWatcherRequestedOptions

خواص

  • مسیر ورودی

    رشته

    مسیر ورودی که باید مشاهده شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه آیا مشاهده باید تمام ورودی‌های فرزند را به صورت بازگشتی شامل شود یا خیر. این می‌تواند فقط برای دایرکتوری‌ها درست باشد.

  • شناسه درخواست

    شماره

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

Change

خواص

  • تغییر نوع

    نوع تغییری که در ورودی رخ داده است.

  • اطلاعات فایل ابری

    CloudFileInfo اختیاری است

    کروم ۱۲۵+

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

  • مسیر ورودی

    رشته

    مسیر ورودی تغییر یافته.

ChangeType

نوع تغییر شناسایی شده در دایرکتوری مشاهده شده.

شمارشی

«تغییر یافته»

«حذف شده»

CloseFileRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست باز

    شماره

    شناسه درخواستی که برای باز کردن فایل استفاده می‌شود.

  • شناسه درخواست

    شماره

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

CloudFileInfo

کروم ۱۲۵+

خواص

  • برچسب نسخه

    رشته اختیاری

    برچسبی که نسخه فایل را نشان می‌دهد.

CloudIdentifier

کروم ۱۱۷+

خواص

  • شناسه

    رشته

    شناسه‌ی ارائه‌دهنده برای فایل/دایرکتوری داده شده.

  • نام ارائه دهنده

    رشته

    شناسه ارائه‌دهنده فضای ذخیره‌سازی ابری (مثلاً 'drive.google.com').

CommonActionId

کروم ۴۵+

فهرست اقدامات رایج. "SHARE" برای اشتراک‌گذاری فایل‌ها با دیگران است. "SAVE_FOR_OFFLINE" برای پین کردن (ذخیره برای دسترسی آفلاین). "OFFLINE_NOT_NECESSARY" برای اطلاع‌رسانی مبنی بر اینکه دیگر نیازی به ذخیره فایل برای دسترسی آفلاین نیست. توسط onGetActionsRequested و onExecuteActionRequested استفاده می‌شود.

شمارشی

«ذخیره_برای_آفلاین»

«آفلاین_ضروری_نیست»

«اشتراک‌گذاری»

ConfigureRequestedOptions

کروم ۴۴+

خواص

  • شناسه سیستم فایل

    رشته

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

  • شناسه درخواست

    شماره

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

CopyEntryRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست

    شماره

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

  • مسیر منبع

    رشته

    مسیر منبع ورودی که قرار است کپی شود.

  • مسیر هدف

    رشته

    مسیر مقصد برای عملیات کپی.

CreateDirectoryRequestedOptions

خواص

  • مسیر دایرکتوری

    رشته

    مسیر دایرکتوری که قرار است ایجاد شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه آیا عملیات بازگشتی است یا خیر (فقط برای دایرکتوری‌ها).

  • شناسه درخواست

    شماره

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

CreateFileRequestedOptions

خواص

  • مسیر فایل

    رشته

    مسیر فایلی که قرار است ایجاد شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست

    شماره

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

DeleteEntryRequestedOptions

خواص

  • مسیر ورودی

    رشته

    مسیر ورودی که قرار است حذف شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه آیا عملیات بازگشتی است یا خیر (فقط برای دایرکتوری‌ها).

  • شناسه درخواست

    شماره

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

EntryMetadata

خواص

  • اطلاعات فایل ابری

    CloudFileInfo اختیاری است

    کروم ۱۲۵+

    اطلاعاتی که یک فایل خاص را در سیستم فایل ابری اصلی مشخص می‌کند. در صورت درخواست در options باید ارائه شود و فایل توسط فضای ذخیره‌سازی ابری پشتیبانی می‌شود.

  • شناسه ابر

    شناسه ابری ( اختیاری)

    کروم ۱۱۷+

    نمایش فضای ذخیره‌سازی ابری این ورودی. در صورت درخواست در options و پشتیبانی فایل توسط فضای ذخیره‌سازی ابری، باید ارائه شود. برای فایل‌های محلی که توسط فضای ذخیره‌سازی ابری پشتیبانی نمی‌شوند، هنگام درخواست باید تعریف نشده باشد.

  • ایس دایرکتور

    بولی اختیاری

    اگر یک دایرکتوری باشد، صحیح است. در صورت درخواست در options باید ارائه شود.

  • نوع مایم

    رشته اختیاری

    نوع MIME برای ورودی. همیشه اختیاری است، اما در صورت درخواست در options باید ارائه شود.

  • زمان اصلاح

    تاریخ اختیاری

    آخرین زمان تغییر این مطلب. در صورت درخواست در options ، باید ارائه شود.

  • نام

    رشته اختیاری

    نام این ورودی (نه نام مسیر کامل). نباید شامل '/' باشد. برای root باید خالی باشد. در صورت درخواست در options باید ارائه شود.

  • اندازه

    شماره اختیاری

    حجم فایل به بایت. در صورت درخواست در options ، باید ارائه شود.

  • تصویر بندانگشتی

    رشته اختیاری

    تصویر بندانگشتی به عنوان یک URI داده در قالب PNG، JPEG یا WEBP، حداکثر با حجم ۳۲ کیلوبایت. اختیاری است، اما فقط در صورت درخواست صریح توسط رویداد onGetMetadataRequested قابل ارائه است.

ExecuteActionRequestedOptions

کروم ۴۵+

خواص

  • شناسه اقدام

    رشته

    شناسه عملی که قرار است اجرا شود.

  • مسیرهای ورودی

    رشته[]

    کروم ۴۷+

    مجموعه مسیرهای ورودی‌هایی که برای عمل مورد استفاده قرار می‌گیرند.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست

    شماره

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

FileSystemInfo

خواص

  • نام نمایش

    رشته

    یک نام قابل خواندن توسط انسان برای سیستم فایل.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل.

  • فایل‌های باز

    فهرست فایل‌های باز شده‌ی فعلی.

  • openFilesLimit

    شماره

    حداکثر تعداد فایل‌هایی که می‌توانند همزمان باز شوند. اگر 0 باشد، محدود نیست.

  • پشتیبانی می‌کندNotifyTag

    بولی اختیاری

    کروم ۴۵+

    اینکه آیا سیستم فایل از فیلد tag برای مشاهده دایرکتوری‌ها پشتیبانی می‌کند یا خیر.

  • ناظران
    کروم ۴۵+

    فهرست ناظران.

  • قابل نوشتن

    بولی

    اینکه آیا سیستم فایل از عملیاتی که ممکن است محتوای سیستم فایل را تغییر دهند (مانند ایجاد، حذف یا نوشتن در فایل‌ها) پشتیبانی می‌کند یا خیر.

GetActionsRequestedOptions

کروم ۴۵+

خواص

  • مسیرهای ورودی

    رشته[]

    کروم ۴۷+

    فهرست مسیرهای ورودی برای فهرست اقدامات.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست

    شماره

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

GetMetadataRequestedOptions

خواص

  • اطلاعات فایل ابری

    بولی

    کروم ۱۲۵+

    اگر مقدار cloudFileInfo درخواست شود، روی true تنظیم می‌شود.

  • شناسه ابر

    بولی

    کروم ۱۱۷+

    اگر مقدار cloudIdentifier درخواست شود، روی true تنظیم می‌شود.

  • مسیر ورودی

    رشته

    مسیر ورودی برای دریافت فراداده‌های مربوط به آن.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • ایس دایرکتور

    بولی

    کروم ۴۹+

    اگر مقدار is_directory درخواست شود، روی true تنظیم می‌شود.

  • نوع مایم

    بولی

    کروم ۴۹+

    اگر مقدار mimeType درخواست شود، روی true تنظیم می‌شود.

  • زمان اصلاح

    بولی

    کروم ۴۹+

    اگر مقدار modificationTime درخواست شود، روی true تنظیم می‌شود.

  • نام

    بولی

    کروم ۴۹+

    اگر مقدار name درخواست شود، روی true تنظیم می‌شود.

  • شناسه درخواست

    شماره

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

  • اندازه

    بولی

    کروم ۴۹+

    اگر مقدار size درخواست شود، روی true تنظیم می‌شود.

  • تصویر بندانگشتی

    بولی

    اگر مقدار thumbnail درخواست شود، روی true تنظیم می‌شود.

MountOptions

خواص

  • نام نمایش

    رشته

    یک نام قابل خواندن توسط انسان برای سیستم فایل.

  • شناسه سیستم فایل

    رشته

    شناسه رشته‌ای سیستم فایل. باید برای هر پسوند منحصر به فرد باشد.

  • openFilesLimit

    شماره اختیاری

    حداکثر تعداد فایل‌هایی که می‌توانند همزمان باز شوند. اگر مشخص نشده باشد، یا 0 باشد، محدود نیست.

  • مداوم

    بولی اختیاری

    کروم ۶۴+

    اینکه آیا چارچوب باید سیستم فایل را در جلسه ورود بعدی از سر بگیرد یا خیر. به طور پیش‌فرض صحیح است.

  • پشتیبانی می‌کندNotifyTag

    بولی اختیاری

    کروم ۴۵+

    اینکه آیا سیستم فایل از فیلد tag برای دایرکتوری‌های مشاهده‌شده پشتیبانی می‌کند یا خیر.

  • قابل نوشتن

    بولی اختیاری

    اینکه آیا سیستم فایل از عملیاتی که ممکن است محتوای سیستم فایل را تغییر دهند (مانند ایجاد، حذف یا نوشتن در فایل‌ها) پشتیبانی می‌کند یا خیر.

MoveEntryRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • شناسه درخواست

    شماره

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

  • مسیر منبع

    رشته

    مسیر منبع ورودی که قرار است به مکان جدید منتقل شود.

  • مسیر هدف

    رشته

    مسیر مقصد برای عملیات کپی.

NotifyOptions

خواص

  • تغییر نوع

    نوع تغییری که برای ورودی مشاهده شده رخ داده است. اگر حذف شده باشد، ورودی مشاهده شده به طور خودکار از لیست ورودی‌های مشاهده شده حذف می‌شود.

  • تغییرات

    تغییر [] اختیاری

    فهرست تغییرات ورودی‌های درون دایرکتوری مشاهده‌شده (شامل خود ورودی)

  • شناسه سیستم فایل

    رشته

    شناسه‌ی سیستم فایل مربوط به این تغییر.

  • مسیر مشاهده‌شده

    رشته

    مسیر ورودی مشاهده شده.

  • بازگشتی

    بولی

    نحوه‌ی ورود مشاهده‌شده.

  • برچسب

    رشته اختیاری

    برچسب اعلان. در صورتی که سیستم فایل با گزینه supportsNotifyTag نصب شده باشد، الزامی است. توجه داشته باشید که این پرچم برای ارائه اعلان‌هایی در مورد تغییراتی که حتی هنگام خاموش شدن سیستم تغییر کرده‌اند، ضروری است.

OpenedFile

خواص

  • مسیر فایل

    رشته

    مسیر فایل باز شده.

  • اینکه آیا فایل برای خواندن یا نوشتن باز شده است یا خیر.

  • شناسه درخواست باز

    شماره

    یک شناسه درخواست که توسط درخواست‌های متوالی خواندن/نوشتن و بستن استفاده می‌شود.

OpenFileMode

روشی برای باز کردن فایل. توسط onOpenFileRequested استفاده می‌شود.

شمارشی

«بخوان»

«بنویس»

OpenFileRequestedOptions

خواص

  • مسیر فایل

    رشته

    مسیر فایلی که قرار است باز شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • اینکه آیا فایل برای خواندن یا نوشتن استفاده خواهد شد یا خیر.

  • شناسه درخواست

    شماره

    یک شناسه درخواست که توسط درخواست‌های متوالی خواندن/نوشتن و بستن استفاده خواهد شد.

ProviderError

کدهای خطایی که توسط افزونه‌های ارائه دهنده در پاسخ به درخواست‌ها و همچنین در صورت بروز خطا هنگام فراخوانی متدهای API استفاده می‌شوند. برای موفقیت، باید "OK" استفاده شود.

شمارشی

«باشه»

«شکست خورد»

"در حال استفاده"

«وجود دارد»

"یافت نشد"

«دسترسی_ممنوع»

«خیلی‌ها باز شده‌اند»

"بدون_حافظه"

"بدون_فاصله"

"نه_دایرکتوری"

"عملیات_نامعتبر"

«امنیت»

«سقط»

"فایل_نیست"

"خالی_نیست"

"آدرس اینترنتی نامعتبر"

"آی او"

ReadDirectoryRequestedOptions

خواص

  • مسیر دایرکتوری

    رشته

    مسیر دایرکتوری که محتوای آن درخواست شده است.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • ایس دایرکتور

    بولی

    کروم ۴۹+

    اگر مقدار is_directory درخواست شود، روی true تنظیم می‌شود.

  • نوع مایم

    بولی

    کروم ۴۹+

    اگر مقدار mimeType درخواست شود، روی true تنظیم می‌شود.

  • زمان اصلاح

    بولی

    کروم ۴۹+

    اگر مقدار modificationTime درخواست شود، روی true تنظیم می‌شود.

  • نام

    بولی

    کروم ۴۹+

    اگر مقدار name درخواست شود، روی true تنظیم می‌شود.

  • شناسه درخواست

    شماره

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

  • اندازه

    بولی

    کروم ۴۹+

    اگر مقدار size درخواست شود، روی true تنظیم می‌شود.

  • تصویر بندانگشتی

    بولی

    کروم ۴۹+

    اگر مقدار thumbnail درخواست شود، روی true تنظیم می‌شود.

ReadFileRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • طول

    شماره

    تعداد بایت‌هایی که باید برگردانده شوند.

  • جبران

    شماره

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

  • شناسه درخواست باز

    شماره

    شناسه درخواستی که برای باز کردن فایل استفاده می‌شود.

  • شناسه درخواست

    شماره

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

RemoveWatcherRequestedOptions

خواص

  • مسیر ورودی

    رشته

    مسیر ورودیِ تحت نظر.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    حالت ناظر.

  • شناسه درخواست

    شماره

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

TruncateRequestedOptions

خواص

  • مسیر فایل

    رشته

    مسیر فایلی که قرار است کوتاه شود.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • طول

    شماره

    تعداد بایت‌هایی که پس از اتمام عملیات باید حفظ شوند.

  • شناسه درخواست

    شماره

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

UnmountOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه‌ی سیستم فایلی که قرار است از حالت مانت خارج شود.

UnmountRequestedOptions

خواص

  • شناسه سیستم فایل

    رشته

    شناسه‌ی سیستم فایلی که قرار است از حالت مانت خارج شود.

  • شناسه درخواست

    شماره

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

Watcher

خواص

  • مسیر ورودی

    رشته

    مسیر ورود مشاهده می‌شود.

  • آخرین برچسب

    رشته اختیاری

    برچسبی که آخرین اعلان برای ناظر استفاده کرده است.

  • بازگشتی

    بولی

    اینکه آیا عملیات نظارت باید شامل تمام ورودی‌های فرزند به صورت بازگشتی باشد یا خیر. این مقدار فقط برای دایرکتوری‌ها می‌تواند درست باشد.

WriteFileRequestedOptions

خواص

  • داده‌ها

    آرایه بافر

    بافر بایت‌هایی که قرار است در فایل نوشته شوند.

  • شناسه سیستم فایل

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • جبران

    شماره

    موقعیتی را در فایل (بر حسب بایت) تعیین کنید تا نوشتن بایت‌ها از آنجا شروع شود.

  • شناسه درخواست باز

    شماره

    شناسه درخواستی که برای باز کردن فایل استفاده می‌شود.

  • شناسه درخواست

    شماره

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

روش‌ها

get()

وعده
chrome.fileSystemProvider.get(
  fileSystemId: string,
  callback?: function,
)
: Promise<FileSystemInfo>

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

پارامترها

بازگشت‌ها

  • کروم ۹۶+

    فراخوانی مجدد برای دریافت نتیجه تابع get .

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

getAll()

وعده
chrome.fileSystemProvider.getAll(
  callback?: function,
)
: Promise<FileSystemInfo[]>

تمام سیستم‌های فایل نصب‌شده توسط افزونه را برمی‌گرداند.

پارامترها

بازگشت‌ها

  • کروم ۹۶+

    فراخوانی مجدد برای دریافت نتیجه تابع getAll .

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

mount()

وعده
chrome.fileSystemProvider.mount(
  options: MountOptions,
  callback?: function,
)
: Promise<void>

یک سیستم فایل را با fileSystemId و displayName داده شده، mount می‌کند. displayName در پنل سمت چپ برنامه Files نمایش داده می‌شود. displayName می‌تواند شامل هر کاراکتری از جمله '/' باشد، اما نمی‌تواند یک رشته خالی باشد. displayName باید توصیفی باشد اما لازم نیست منحصر به فرد باشد. fileSystemId نباید یک رشته خالی باشد.

بسته به نوع سیستم فایلی که نصب می‌شود، گزینه source باید به طور مناسب تنظیم شود.

در صورت بروز خطا، runtime.lastError با کد خطای مربوطه تنظیم می‌شود.

پارامترها

  • گزینه‌ها
  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۹۶+

    یک فراخوانی عمومی برای نمایش موفقیت یا شکست.

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

notify()

قول کروم ۴۵+
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
  callback?: function,
)
: Promise<void>

در حالت recursive ، در مورد تغییرات در دایرکتوری تحت نظارت در observedPath اطلاع‌رسانی می‌کند. اگر سیستم فایل با supportsNotifyTag نصب شده باشد، باید tag ارائه شود و همه تغییرات از آخرین اعلان، حتی اگر سیستم خاموش شده باشد، همیشه گزارش می‌شوند. آخرین برچسب را می‌توان با getAll دریافت کرد.

برای استفاده، گزینه file_system_provider.notify manifest باید روی true تنظیم شود.

مقدار tag می‌تواند هر رشته‌ای باشد که در هر فراخوانی منحصر به فرد باشد، بنابراین می‌توان آخرین اعلان ثبت شده را شناسایی کرد. به عنوان مثال، اگر افزونه ارائه دهنده پس از راه‌اندازی مجدد شروع به کار کند و برچسب آخرین اعلان ثبت شده برابر با "123" باشد، باید برای تمام تغییراتی که از زمان تغییر با برچسب "123" رخ داده است، notify را فراخوانی کند. این نمی‌تواند یک رشته خالی باشد.

همه ارائه‌دهندگان قادر به ارائه برچسب نیستند، اما اگر سیستم فایل دارای گزارش تغییرات باشد، آن برچسب می‌تواند مثلاً شماره تغییر یا شماره ویرایش باشد.

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

در صورت بروز خطا، runtime.lastError کد خطای مربوطه را تنظیم می‌کند.

پارامترها

  • گزینه‌ها
  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۹۶+

    یک فراخوانی عمومی برای نمایش موفقیت یا شکست.

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

unmount()

وعده
chrome.fileSystemProvider.unmount(
  options: UnmountOptions,
  callback?: function,
)
: Promise<void>

یک سیستم فایل را با fileSystemId داده شده، unmount می‌کند. این تابع باید پس از فراخوانی onUnmountRequested فراخوانی شود. همچنین، افزونه‌ی ارائه دهنده می‌تواند در صورت عدم درخواست (مثلاً در صورت قطع اتصال یا خطای فایل) تصمیم به unmount کردن بگیرد.

در صورت بروز خطا، runtime.lastError با کد خطای مربوطه تنظیم می‌شود.

پارامترها

  • گزینه‌ها
  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۹۶+

    یک فراخوانی عمومی برای نمایش موفقیت یا شکست.

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

رویدادها

onAbortRequested

chrome.fileSystemProvider.onAbortRequested.addListener(
  callback: function,
)

هنگام درخواست لغو عملیاتی با operationRequestId رخ می‌دهد. عملیاتی که با operationRequestId اجرا می‌شود باید فوراً متوقف شود و successCallback مربوط به این درخواست لغو اجرا شود. اگر لغو عملیات با شکست مواجه شود، باید errorCallback فراخوانی شود. توجه داشته باشید که فراخوانی‌های مجدد عملیات لغو شده نباید فراخوانی شوند، زیرا نادیده گرفته می‌شوند. علیرغم فراخوانی errorCallback ، ممکن است درخواست به اجبار لغو شود.

پارامترها

onAddWatcherRequested

کروم ۴۵+
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

هنگام درخواست تنظیم یک ناظر دایرکتوری جدید، رخ می‌دهد. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

onCloseFileRequested

chrome.fileSystemProvider.onCloseFileRequested.addListener(
  callback: function,
)

هنگام باز کردن فایلی که قبلاً با openRequestId باز شده است و درخواست بسته شدن آن می‌شود، رخ می‌دهد.

پارامترها

onConfigureRequested

کروم ۴۴+
chrome.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

هنگام نمایش یک کادر محاوره‌ای پیکربندی برای fileSystemId درخواست می‌شود. اگر مدیریت شود، گزینه file_system_provider.configurable manfiest باید روی true تنظیم شود.

پارامترها

onCopyEntryRequested

chrome.fileSystemProvider.onCopyEntryRequested.addListener(
  callback: function,
)

هنگام درخواست کپی کردن یک ورودی (به صورت بازگشتی در صورت وجود یک دایرکتوری) رخ می‌دهد. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

onCreateDirectoryRequested

chrome.fileSystemProvider.onCreateDirectoryRequested.addListener(
  callback: function,
)

هنگام درخواست ایجاد یک دایرکتوری، این خطا رخ می‌دهد. اگر دایرکتوری هدف از قبل وجود داشته باشد، عملیات باید با خطای EXISTS شکست بخورد. اگر recursive درست باشد، باید تمام دایرکتوری‌های مفقود شده در مسیر دایرکتوری ایجاد شوند.

پارامترها

onCreateFileRequested

chrome.fileSystemProvider.onCreateFileRequested.addListener(
  callback: function,
)

هنگام ایجاد فایل درخواست می‌شود. اگر فایل از قبل وجود داشته باشد، باید errorCallback با کد خطای "EXISTS" فراخوانی شود.

پارامترها

onDeleteEntryRequested

chrome.fileSystemProvider.onDeleteEntryRequested.addListener(
  callback: function,
)

هنگام درخواست حذف یک ورودی، این رویداد رخ می‌دهد. اگر recursive درست باشد و ورودی یک دایرکتوری باشد، تمام ورودی‌های داخل آن نیز باید به صورت بازگشتی حذف شوند.

پارامترها

onExecuteActionRequested

کروم ۴۸+
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

هنگام اجرای یک عمل برای مجموعه‌ای از فایل‌ها یا دایرکتوری‌ها، درخواست می‌شود. پس از تکمیل عمل، باید successCallback فراخوانی شود. در صورت بروز خطا، errorCallback باید فراخوانی شود.

پارامترها

onGetActionsRequested

کروم ۴۸+
chrome.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

زمانی که لیستی از اقدامات برای مجموعه‌ای از فایل‌ها یا دایرکتوری‌ها در entryPaths درخواست می‌شود، صادر می‌شود. تمام اقدامات برگردانده شده باید برای هر ورودی قابل اجرا باشند. اگر چنین اقداماتی وجود نداشته باشد، باید یک آرایه خالی برگردانده شود. اقدامات باید با فراخوانی successCallback برگردانده شوند. در صورت بروز خطا، errorCallback باید فراخوانی شود.

پارامترها

onGetMetadataRequested

chrome.fileSystemProvider.onGetMetadataRequested.addListener(
  callback: function,
)

زمانی رخ می‌دهد که فراداده‌های یک فایل یا دایرکتوری در entryPath درخواست شود. فراداده‌ها باید با فراخوانی successCallback بازگردانده شوند. در صورت بروز خطا، errorCallback باید فراخوانی شود.

پارامترها

onMountRequested

کروم ۴۴+
chrome.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

هنگام نمایش کادر محاوره‌ای برای نصب یک سیستم فایل جدید، درخواست می‌شود. اگر افزونه/برنامه یک کنترل‌کننده فایل باشد، این رویداد نباید مدیریت شود. در عوض app.runtime.onLaunched باید مدیریت شود تا سیستم‌های فایل جدید هنگام باز شدن یک فایل، نصب شوند. برای چندین نصب، گزینه manifest مربوط به file_system_provider.multiple_mounts باید روی true تنظیم شود.

پارامترها

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (successCallback: function, errorCallback: function) => void

    • successCallback

      تابع

      پارامتر successCallback به شکل زیر است:

      () => void

    • خطاپاسخ به تماس

      تابع

      پارامتر errorCallback به شکل زیر است:

      (error: ProviderError) => void

onMoveEntryRequested

chrome.fileSystemProvider.onMoveEntryRequested.addListener(
  callback: function,
)

هنگام درخواست جابجایی یک ورودی (به صورت بازگشتی در صورت وجود یک دایرکتوری) رخ می‌دهد. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

onOpenFileRequested

chrome.fileSystemProvider.onOpenFileRequested.addListener(
  callback: function,
)

هنگام باز کردن فایلی در filePath درخواست می‌شود. اگر فایل وجود نداشته باشد، عملیات با شکست مواجه می‌شود. حداکثر تعداد فایل‌های باز شده به طور همزمان را می‌توان با MountOptions مشخص کرد.

پارامترها

onReadDirectoryRequested

chrome.fileSystemProvider.onReadDirectoryRequested.addListener(
  callback: function,
)

زمانی که محتوای یک دایرکتوری در directoryPath درخواست می‌شود، رخ می‌دهد. نتایج باید به صورت تکه تکه و با چندین بار فراخوانی successCallback بازگردانده شوند. در صورت بروز خطا، errorCallback باید فراخوانی شود.

پارامترها

onReadFileRequested

chrome.fileSystemProvider.onReadFileRequested.addListener(
  callback: function,
)

هنگام درخواست خواندن محتوای فایلی که قبلاً با openRequestId باز شده است، رخ می‌دهد. نتایج باید با چندین بار فراخوانی successCallback به صورت تکه تکه بازگردانده شوند. در صورت بروز خطا، errorCallback باید فراخوانی شود.

پارامترها

onRemoveWatcherRequested

کروم ۴۵+
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

زمانی رخ می‌دهد که watcher باید حذف شود. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

onTruncateRequested

chrome.fileSystemProvider.onTruncateRequested.addListener(
  callback: function,
)

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

پارامترها

onUnmountRequested

chrome.fileSystemProvider.onUnmountRequested.addListener(
  callback: function,
)

هنگام درخواست unmounting برای سیستم فایل با شناسه fileSystemId ، رخ می‌دهد. در پاسخ، متد unmount API باید همراه با successCallback فراخوانی شود. اگر unmounting امکان‌پذیر نباشد (مثلاً به دلیل یک عملیات در حال انتظار)، باید errorCallback فراخوانی شود.

پارامترها

onWriteFileRequested

chrome.fileSystemProvider.onWriteFileRequested.addListener(
  callback: function,
)

هنگام درخواست نوشتن محتوا در فایلی که قبلاً با openRequestId باز شده است، رخ می‌دهد.

پارامترها