chrome.fileSystemProvider

توضیحات

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

مجوزها

fileSystemProvider

در دسترس بودن

فقط ChromeOS

آشکار

برای استفاده از 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 پشتیبانی می‌شود. به طور پیش فرض: نادرست.
multiple_mounts (بولی) - اختیاری
آیا چندین (بیش از یک) فایل سیستم های نصب شده پشتیبانی می شوند یا خیر. به طور پیش فرض: نادرست.
watchable (بولی) - اختیاری
آیا تنظیم ناظران و اطلاع رسانی در مورد تغییرات پشتیبانی می شود. به طور پیش فرض: نادرست.
source (شماره "فایل"، "دستگاه" یا "شبکه") - مورد نیاز است
منبع داده برای سیستم های فایل نصب شده

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

نمای کلی

File System Provider API به برنامه‌های افزودنی اجازه می‌دهد از سیستم‌های فایل مجازی، که در مدیر فایل در ChromeOS موجود هستند، پشتیبانی کنند. موارد استفاده عبارتند از فشرده سازی بایگانی ها و دسترسی به فایل ها در سرویس ابری غیر از Drive.

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

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

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

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

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

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

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

چرخه زندگی

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

انواع

AbortRequestedOptions

خواص

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

    رشته

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

  • OperationRequestId

    شماره

    شناسه درخواست سقط

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

    شماره

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

Action

Chrome 45+

خواص

  • شناسه

    رشته

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

  • عنوان

    رشته اختیاری

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

AddWatcherRequestedOptions

خواص

  • enterPath

    رشته

    مسیر ورودی رعایت شود.

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

    رشته

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

  • بازگشتی

    بولی

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

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

    شماره

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

Change

خواص

  • تغییر نوع

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

  • cloudFileInfo

    CloudFileInfo اختیاری است

    Chrome 125+

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

  • enterPath

    رشته

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

ChangeType

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

Enum

"تغییر شده"

"حذف شده"

CloseFileRequestedOptions

خواص

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

    رشته

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

  • openRequestId

    شماره

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

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

    شماره

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

CloudFileInfo

Chrome 125+

خواص

  • تگ نسخه

    رشته اختیاری

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

CloudIdentifier

Chrome 117+

خواص

  • شناسه

    رشته

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

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

    رشته

    شناسه ارائه‌دهنده فضای ذخیره‌سازی ابری (مانند «drive.google.com»).

CommonActionId

Chrome 45+

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

Enum

"SAVE_FOR_OFFLINE"

"OFFLINE_NOT_NECESSARY"

"اشتراک گذاری"

ConfigureRequestedOptions

Chrome 44+

خواص

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

    رشته

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

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

    شماره

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

CopyEntryRequestedOptions

خواص

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

    رشته

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

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

    شماره

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

  • sourcePath

    رشته

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

  • targetPath

    رشته

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

CreateDirectoryRequestedOptions

خواص

  • مسیر مسیر

    رشته

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

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

    رشته

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

  • بازگشتی

    بولی

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

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

    شماره

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

CreateFileRequestedOptions

خواص

  • filePath

    رشته

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

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

    رشته

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

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

    شماره

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

DeleteEntryRequestedOptions

خواص

  • enterPath

    رشته

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

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

    رشته

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

  • بازگشتی

    بولی

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

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

    شماره

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

EntryMetadata

خواص

  • cloudFileInfo

    CloudFileInfo اختیاری است

    Chrome 125+

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

  • شناسه ابری

    CloudIdentifier اختیاری است

    Chrome 117+

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

  • isDirectory

    بولی اختیاری

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

  • mimeType

    رشته اختیاری

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

  • زمان اصلاح

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

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

  • نام

    رشته اختیاری

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

  • اندازه

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

    اندازه فایل بر حسب بایت در صورت درخواست در options باید ارائه شود.

  • تصویر کوچک

    رشته اختیاری

    تصویر کوچک را به عنوان یک URI داده در قالب‌های PNG، JPEG یا WEBP، حداکثر 32 کیلوبایت اندازه بگیرید. اختیاری است، اما تنها زمانی می تواند ارائه شود که به صراحت توسط رویداد onGetMetadataRequested درخواست شود.

ExecuteActionRequestedOptions

Chrome 45+

خواص

  • شناسه اقدام

    رشته

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

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

    رشته[]

    Chrome 47+

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

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

    رشته

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

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

    شماره

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

FileSystemInfo

خواص

  • نمایش نام

    رشته

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

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

    رشته

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

  • OpenFiles

    لیست فایل های باز شده در حال حاضر

  • OpenFilesLimit

    شماره

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

  • پشتیبانی از NotifyTag

    بولی اختیاری

    Chrome 45+

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

  • ناظران
    Chrome 45+

    لیست ناظران

  • قابل نوشتن

    بولی

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

GetActionsRequestedOptions

Chrome 45+

خواص

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

    رشته[]

    Chrome 47+

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

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

    رشته

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

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

    شماره

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

GetMetadataRequestedOptions

خواص

  • cloudFileInfo

    بولی

    Chrome 125+

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

  • شناسه ابری

    بولی

    Chrome 117+

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

  • enterPath

    رشته

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

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

    رشته

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

  • isDirectory

    بولی

    Chrome 49+

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

  • mimeType

    بولی

    Chrome 49+

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

  • زمان اصلاح

    بولی

    Chrome 49+

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

  • نام

    بولی

    Chrome 49+

    در صورت درخواست مقدار name ، روی true تنظیم کنید.

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

    شماره

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

  • اندازه

    بولی

    Chrome 49+

    در صورت درخواست مقدار size ، روی true تنظیم کنید.

  • تصویر کوچک

    بولی

    در صورت درخواست مقدار thumbnail ، روی true تنظیم کنید.

MountOptions

خواص

  • نمایش نام

    رشته

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

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

    رشته

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

  • OpenFilesLimit

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

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

  • مداوم

    بولی اختیاری

    Chrome 64+

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

  • پشتیبانی از NotifyTag

    بولی اختیاری

    Chrome 45+

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

  • قابل نوشتن

    بولی اختیاری

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

MoveEntryRequestedOptions

خواص

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

    رشته

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

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

    شماره

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

  • sourcePath

    رشته

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

  • targetPath

    رشته

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

NotifyOptions

خواص

  • تغییر نوع

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

  • تغییر می کند

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

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

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

    رشته

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

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

    رشته

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

  • بازگشتی

    بولی

    حالت ورودی مشاهده شده

  • برچسب زدن

    رشته اختیاری

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

OpenedFile

خواص

  • filePath

    رشته

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

  • حالت

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

  • openRequestId

    شماره

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

OpenFileMode

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

Enum

"بخوان"

"نوشتن"

OpenFileRequestedOptions

خواص

  • filePath

    رشته

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

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

    رشته

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

  • حالت

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

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

    شماره

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

ProviderError

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

Enum

"باشه"

"شکست خورده"

"IN_USE"

"وجود دارد"

"NOT_FOUND"

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"NO_SPACE"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

"امنیت"

"سقط کردن"

"NOT_A_FILE"

"NOT_EMPTY"

"INVALID_URL"

"IO"

ReadDirectoryRequestedOptions

خواص

  • مسیر مسیر

    رشته

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

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

    رشته

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

  • isDirectory

    بولی

    Chrome 49+

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

  • mimeType

    بولی

    Chrome 49+

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

  • زمان اصلاح

    بولی

    Chrome 49+

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

  • نام

    بولی

    Chrome 49+

    در صورت درخواست مقدار name ، روی true تنظیم کنید.

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

    شماره

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

  • اندازه

    بولی

    Chrome 49+

    در صورت درخواست مقدار size ، روی true تنظیم کنید.

  • تصویر کوچک

    بولی

    Chrome 49+

    در صورت درخواست مقدار thumbnail ، روی true تنظیم کنید.

ReadFileRequestedOptions

خواص

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

    رشته

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

  • طول

    شماره

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

  • جبران

    شماره

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

  • openRequestId

    شماره

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

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

    شماره

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

RemoveWatcherRequestedOptions

خواص

  • enterPath

    رشته

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

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

    رشته

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

  • بازگشتی

    بولی

    حالت ناظر.

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

    شماره

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

TruncateRequestedOptions

خواص

  • filePath

    رشته

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

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

    رشته

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

  • طول

    شماره

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

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

    شماره

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

UnmountOptions

خواص

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

    رشته

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

UnmountRequestedOptions

خواص

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

    رشته

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

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

    شماره

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

Watcher

خواص

  • enterPath

    رشته

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

  • lastTag

    رشته اختیاری

    برچسب استفاده شده توسط آخرین اعلان برای تماشاگر.

  • بازگشتی

    بولی

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

WriteFileRequestedOptions

خواص

  • داده ها

    ArrayBuffer

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

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

    رشته

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

  • جبران

    شماره

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

  • openRequestId

    شماره

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

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

    شماره

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

روش ها

get()

قول بده
chrome.fileSystemProvider.get(
  fileSystemId: string,
  callback?: function,
)

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

پارامترها

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

    رشته

  • پاسخ به تماس

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

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

    (fileSystem: FileSystemInfo) => void

برمی گرداند

  • Promise< FileSystemInfo >

    Chrome 96+

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

getAll()

قول بده
chrome.fileSystemProvider.getAll(
  callback?: function,
)

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

پارامترها

  • پاسخ به تماس

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

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

    (fileSystems: FileSystemInfo[]) => void

برمی گرداند

  • Promise< FileSystemInfo []>

    Chrome 96+

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

mount()

قول بده
chrome.fileSystemProvider.mount(
  options: MountOptions,
  callback?: function,
)

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

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

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

پارامترها

  • گزینه ها
  • پاسخ به تماس

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

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

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 96+

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

notify()

Promise Chrome 45+
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
  callback?: function,
)

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

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

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

همه ارائه دهندگان قادر به ارائه یک برچسب نیستند، اما اگر سیستم فایل دارای تغییرات ثبت است، آنگاه تگ می تواند به عنوان مثال باشد. یک شماره تغییر یا یک شماره تجدید نظر.

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

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

پارامترها

  • گزینه ها
  • پاسخ به تماس

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

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

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 96+

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

unmount()

قول بده
chrome.fileSystemProvider.unmount(
  options: UnmountOptions,
  callback?: function,
)

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

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

پارامترها

  • گزینه ها
  • پاسخ به تماس

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

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

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 96+

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

رویدادها

onAbortRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onAddWatcherRequested

Chrome 45+
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onCloseFileRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onConfigureRequested

Chrome 44+
chrome.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onCopyEntryRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onCreateDirectoryRequested

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

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

پارامترها

onCreateFileRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onDeleteEntryRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onExecuteActionRequested

Chrome 48+
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

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

پارامترها

onGetActionsRequested

Chrome 48+
chrome.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

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

پارامترها

onGetMetadataRequested

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

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

پارامترها

onMountRequested

Chrome 44+
chrome.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

    • موفقیت تماس برگشتی

      تابع

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

      () => void

    • errorCallback

      تابع

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

      (error: ProviderError) => void

onMoveEntryRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

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 باید فراخوانی شود.

پارامترها

  • پاسخ به تماس

    تابع

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

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

    • گزینه ها
    • موفقیت تماس برگشتی

      تابع

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

      (data: ArrayBuffer, hasMore: boolean) => void

      • داده ها

        ArrayBuffer

      • دارای بیشتر

        بولی

    • errorCallback

      تابع

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

      (error: ProviderError) => void

onRemoveWatcherRequested

Chrome 45+
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

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

پارامترها

onTruncateRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onUnmountRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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

onWriteFileRequested

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

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

پارامترها

  • پاسخ به تماس

    تابع

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

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