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 اختیاری است

    انتظار

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

  • enterPath

    رشته

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

ChangeType

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

Enum

"تغییر کرد"

"حذف شده"

CloseFileRequestedOptions

خواص

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

    رشته

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

  • openRequestId

    عدد

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

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

    عدد

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

CloudFileInfo

انتظار

خواص

  • تگ نسخه

    رشته اختیاری

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

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

خواص

  • مسیر فایل

    رشته

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

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

    رشته

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

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

    عدد

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

DeleteEntryRequestedOptions

خواص

  • enterPath

    رشته

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

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

    رشته

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

  • بازگشتی

    بولی

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

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

    عدد

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

EntryMetadata

خواص

  • cloudFileInfo

    CloudFileInfo اختیاری است

    انتظار

    اطلاعاتی که یک فایل خاص را در سیستم فایل ابری زیرین شناسایی می کند. در صورت درخواست در 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

    بولی

    انتظار

    اگر مقدار 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

خواص

  • مسیر فایل

    رشته

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

  • حالت

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

  • openRequestId

    عدد

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

OpenFileMode

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

Enum

"خواندن"

"نوشتن"

OpenFileRequestedOptions

خواص

  • مسیر فایل

    رشته

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

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

    رشته

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

  • حالت

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

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

    عدد

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

ProviderError

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

Enum

"خوب"

"ناموفق"

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

"وجود دارد"

"پیدا نشد"

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"جای خالی وجود ندارد"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

"امنیت"

"سقط کردن"

"NOT_A_FILE"

"خالی نیست"

"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

خواص

  • مسیر فایل

    رشته

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

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

    رشته

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

  • طول

    عدد

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

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

    عدد

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

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 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

getAll()

وعده
chrome.fileSystemProvider.getAll(
  callback?: function,
)

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

مولفه های

  • پاسخ به تماس

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

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

    (fileSystems: FileSystemInfo[])=>void

برمی گرداند

  • Promise< FileSystemInfo []>

    Chrome 96+

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به 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 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به 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 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

unmount()

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

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

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

مولفه های

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

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

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

    ()=>void

برمی گرداند

  • قول<باطل>

    Chrome 96+

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به 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 فراخوانی شود.

مولفه های

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

مولفه های

onDeleteEntryRequested

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

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

مولفه های

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

    • error Callback

      تابع

      پارامتر 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

      • بیشتر داشتن

        بولی

    • error Callback

      تابع

      پارامتر 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