chrome.fileSystemProvider

refresh date: 2026-09-25 robots: noindex

الوصف

استخدِم واجهة برمجة التطبيقات chrome.fileSystemProvider لإنشاء أنظمة ملفات يمكن الوصول إليها من مدير الملفات على نظام التشغيل ChromeOS.

الأذونات

fileSystemProvider

مدى التوفّر

نظام التشغيل ChromeOS فقط

البيان

يجب الإفصاح عن إذن "fileSystemProvider" والقسم في ملف بيان الإضافة لاستخدام واجهة برمجة التطبيقات File System Provider API. على سبيل المثال:

{
  "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 (منطقي): سمة اختيارية
ما إذا كان يُسمح باستخدام أنظمة ملفات متعددة (أكثر من نظام واحد) مثبّتة. القيمة التلقائية هي false.
‫watchable (منطقي): سمة اختيارية
تشير إلى ما إذا كان من الممكن ضبط المراقبين وإرسال إشعارات بشأن التغييرات. القيمة التلقائية هي false.
source (تعداد "file" أو "device" أو "network") - مطلوب
مصدر البيانات لأنظمة الملفات المثبّتة

يستخدم تطبيق Files المعلومات المذكورة أعلاه لعرض عناصر واجهة المستخدم ذات الصلة بشكل مناسب. على سبيل المثال، إذا تم ضبط configurable على "صحيح"، سيتم عرض عنصر قائمة لضبط وحدات التخزين. وبالمثل، في حال ضبط السياسة multiple_mounts على true، سيسمح تطبيق "الملفات" بإضافة أكثر من نقطة تثبيت واحدة من واجهة المستخدم. إذا كانت قيمة watchable هي false، سيتم عرض زر إعادة التحميل. يُرجى العِلم أنّه يجب إضافة دعم للمراقبين، إن أمكن، حتى تظهر التغييرات على نظام الملفات فورًا وتلقائيًا.

نظرة عامة

تسمح واجهة برمجة التطبيقات File System Provider API للإضافات بإتاحة أنظمة الملفات الافتراضية المتوفّرة في مدير الملفات على ChromeOS. تشمل حالات الاستخدام إلغاء ضغط الأرشيفات والوصول إلى الملفات في خدمة سحابية غير Drive.

تحميل أنظمة الملفات

يمكن أن توفّر الإضافات محتوى نظام الملفات من مصدر خارجي (مثل خادم عن بُعد أو جهاز USB)، أو باستخدام ملف محلي (مثل أرشيف) كإدخال.

لكتابة أنظمة الملفات التي تعمل كمعالجات للملفات (المصدر هو "file")، يجب أن يكون الموفّر تطبيقًا مُجمَّعًا، لأنّ الحدث onLaunched غير متاح للإضافات.

إذا كان المصدر شبكة أو جهازًا، يجب تحميل نظام الملفات عند استدعاء الحدث onMountRequested.

مصدر بيانات نظام الملفات نقطة الإدخال
"file" متاح للتطبيقات المجمّعة فقط.
"device" أو "network" onMountRequested

ضبط أنظمة الملفات

يمكن ضبط أنظمة الملفات المقدَّمة بعد تثبيتها من خلال الحدث onConfigureRequested. وهو مفيد بشكل خاص لأنظمة الملفات التي توفّر المحتوى عبر الشبكة من أجل ضبط بيانات الاعتماد المناسبة. إنّ معالجة هذا الحدث اختيارية.

رحلة المستخدم

يتذكّر Chrome أنظمة الملفات المقدَّمة بعد تحميلها، ويعيد تحميلها تلقائيًا بعد إعادة التشغيل. وبالتالي، بعد تثبيت نظام ملفات من خلال إضافة توفّره، سيظل مثبّتًا إلى أن يتم إلغاء تحميل الإضافة أو تستدعي الإضافة طريقة إلغاء التثبيت.

الأنواع

AbortRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • operationRequestId

    الرقم

    معرّف الطلب الذي سيتم إلغاؤه

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

Action

الإصدار 45 من Chrome أو الإصدارات الأحدث

الخصائص

  • id

    سلسلة

    معرّف الإجراء أي سلسلة أو CommonActionId للإجراءات الشائعة

  • title

    string اختياري

    عنوان الإجراء وقد يتم تجاهله في الإجراءات الشائعة.

AddWatcherRequestedOptions

الخصائص

  • entryPath

    سلسلة

    مسار الإدخال المطلوب رصده

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • المتكرر

    قيمة منطقية

    ما إذا كان يجب أن تتضمّن المراقبة جميع الإدخالات الفرعية بشكل متكرّر. يمكن أن تكون القيمة "صحيح" للأدلة فقط.

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

Change

الخصائص

  • changeType

    نوع التغيير الذي حدث للإدخال.

  • cloudFileInfo

    CloudFileInfo اختياري

    الإصدار 125 من Chrome والإصدارات الأحدث

    المعلومات المتعلقة بالملف إذا كان مدعومًا بنظام ملفات سحابي.

  • entryPath

    سلسلة

    مسار الإدخال الذي تم تغييره

ChangeType

نوع التغيير الذي تم رصده في الدليل الذي تتم مراقبته

Enum

"CHANGED"

"DELETED"

CloseFileRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • openRequestId

    الرقم

    معرّف طلب يُستخدَم لفتح الملف

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

CloudFileInfo

الإصدار 125 من Chrome والإصدارات الأحدث

الخصائص

  • versionTag

    string اختياري

    علامة تمثّل إصدار الملف

CloudIdentifier

الإصدار 117 من Chrome والإصدارات الأحدث

الخصائص

  • id

    سلسلة

    معرّف الموفّر للملف أو الدليل المحدّد

  • providerName

    سلسلة

    معرّف لمقدّم خدمة التخزين في السحابة الإلكترونية (مثل "drive.google.com")

CommonActionId

الإصدار 45 من Chrome أو الإصدارات الأحدث

قائمة بالإجراءات الشائعة يُستخدم "SHARE" لمشاركة الملفات مع الآخرين. "SAVE_FOR_OFFLINE" لتثبيت المحتوى (حفظه للتشغيل بلا إنترنت). ‫"OFFLINE_NOT_NECESSARY" لإعلامك بأنّه لم يعُد من الضروري تخزين الملف للوصول إليه بلا إنترنت. يستخدمه onGetActionsRequested وonExecuteActionRequested.

Enum

"SAVE_FOR_OFFLINE"

"OFFLINE_NOT_NECESSARY"

"مشاركة"

ConfigureRequestedOptions

الإصدار 44 من Chrome أو الإصدارات الأحدث

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المطلوب ضبطه

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

CopyEntryRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

  • sourcePath

    سلسلة

    مسار المصدر للإدخال المطلوب نسخه

  • targetPath

    سلسلة

    مسار الوجهة لعملية النسخ

CreateDirectoryRequestedOptions

الخصائص

  • directoryPath

    سلسلة

    مسار الدليل المطلوب إنشاؤه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • المتكرر

    قيمة منطقية

    ما إذا كانت العملية متكررة (للأدلة فقط)

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

CreateFileRequestedOptions

الخصائص

  • filePath

    سلسلة

    مسار الملف المطلوب إنشاؤه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

DeleteEntryRequestedOptions

الخصائص

  • entryPath

    سلسلة

    مسار الإدخال المطلوب حذفه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • المتكرر

    قيمة منطقية

    ما إذا كانت العملية متكررة (للأدلة فقط)

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

EntryMetadata

الخصائص

  • cloudFileInfo

    CloudFileInfo اختياري

    الإصدار 125 من Chrome والإصدارات الأحدث

    المعلومات التي تحدّد ملفًا معيّنًا في نظام الملفات السحابي الأساسي يجب تقديم هذه السمة إذا تم طلبها في options وكان الملف مخزّنًا في التخزين في السحابة الإلكترونية.

  • cloudIdentifier

    CloudIdentifier اختياري

    الإصدار 117 من Chrome والإصدارات الأحدث

    تمثيل التخزين في السحابة الإلكترونية لهذا الإدخال. يجب تقديم هذه السمة إذا تم طلبها في options وكان الملف مخزّنًا في التخزين في السحابة الإلكترونية. بالنسبة إلى الملفات المحلية التي لا يتم الاحتفاظ بنسخة احتياطية منها في مساحة التخزين في السحابة الإلكترونية، يجب أن تكون غير محدّدة عند طلبها.

  • isDirectory

    قيمة منطقية اختيارية

    صحيح إذا كان دليلاً. يجب تقديمها إذا طُلبت في options.

  • mimeType

    string اختياري

    نوع MIME للإدخال هذه السمة اختيارية دائمًا، ولكن يجب تقديمها إذا تم طلبها في options.

  • modificationTime

    التاريخ (اختياري)

    وقت آخر تعديل لهذا الإدخال يجب تقديمها إذا طُلبت في options.

  • الاسم

    string اختياري

    اسم هذا الإدخال (وليس اسم المسار الكامل). يجب ألا يحتوي على '/'. بالنسبة إلى الجذر، يجب أن يكون فارغًا. يجب تقديمها إذا طُلبت في options.

  • الحجم

    number اختيارية

    حجم الملف بالبايت يجب تقديمها إذا طُلبت في options.

  • صورة مصغّرة

    string اختياري

    صورة مصغّرة كمعرّف موارد منتظم (URI) للبيانات بتنسيق PNG أو JPEG أو WEBP، وبحجم لا يتجاوز 32 كيلوبايت هذا الحقل اختياري، ولكن لا يمكن تقديمه إلا عند طلبه صراحةً من خلال الحدث onGetMetadataRequested.

ExecuteActionRequestedOptions

الإصدار 45 من Chrome أو الإصدارات الأحدث

الخصائص

  • actionId

    سلسلة

    معرّف الإجراء المطلوب تنفيذه

  • entryPaths

    string[]

    الإصدار 47 من Chrome والإصدارات الأحدث

    مجموعة مسارات الإدخالات التي سيتم استخدامها للإجراء.

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

FileSystemInfo

الخصائص

  • displayName

    سلسلة

    اسم لنظام الملفات يمكن لشخص عادي قراءته

  • fileSystemId

    سلسلة

    معرّف نظام الملفات

  • openedFiles

    قائمة بالملفات المفتوحة حاليًا

  • openedFilesLimit

    الرقم

    الحد الأقصى لعدد الملفات التي يمكن فتحها في وقت واحد إذا كانت القيمة 0، لن يكون هناك حدّ أقصى.

  • supportsNotifyTag

    قيمة منطقية اختيارية

    الإصدار 45 من Chrome أو الإصدارات الأحدث

    ما إذا كان نظام الملفات يتيح استخدام الحقل tag لمراقبة الأدلة

  • متابعون
    الإصدار 45 من Chrome أو الإصدارات الأحدث

    قائمة بالمشاهدين

  • قابل للكتابة

    قيمة منطقية

    ما إذا كان نظام الملفات يتيح العمليات التي قد تغيّر محتوى نظام الملفات (مثل إنشاء الملفات أو حذفها أو الكتابة فيها)

GetActionsRequestedOptions

الإصدار 45 من Chrome أو الإصدارات الأحدث

الخصائص

  • entryPaths

    string[]

    الإصدار 47 من Chrome والإصدارات الأحدث

    قائمة بمسارات الإدخالات لقائمة الإجراءات

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

GetMetadataRequestedOptions

الخصائص

  • cloudFileInfo

    قيمة منطقية

    الإصدار 125 من Chrome والإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة cloudFileInfo مطلوبة.

  • cloudIdentifier

    قيمة منطقية

    الإصدار 117 من Chrome والإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة cloudIdentifier مطلوبة.

  • entryPath

    سلسلة

    مسار الإدخال المطلوب جلب البيانات الوصفية عنه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • isDirectory

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة is_directory مطلوبة.

  • mimeType

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة mimeType مطلوبة.

  • modificationTime

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة modificationTime مطلوبة.

  • الاسم

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة name مطلوبة.

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

  • الحجم

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة size مطلوبة.

  • صورة مصغّرة

    قيمة منطقية

    يجب ضبطها على true إذا كانت قيمة thumbnail مطلوبة.

MountOptions

الخصائص

  • displayName

    سلسلة

    اسم لنظام الملفات يمكن لشخص عادي قراءته

  • fileSystemId

    سلسلة

    معرّف السلسلة لنظام الملفات يجب أن يكون فريدًا لكل إضافة.

  • openedFilesLimit

    number اختيارية

    الحد الأقصى لعدد الملفات التي يمكن فتحها في وقت واحد في حال عدم تحديدها أو ضبطها على 0، لن يتم فرض أي قيود.

  • ثابتة

    قيمة منطقية اختيارية

    الإصدار 64 من Chrome أو الإصدارات الأحدث

    ما إذا كان يجب أن يستأنف إطار العمل نظام الملفات في جلسة تسجيل الدخول التالية القيمة التلقائية هي True.

  • supportsNotifyTag

    قيمة منطقية اختيارية

    الإصدار 45 من Chrome أو الإصدارات الأحدث

    ما إذا كان نظام الملفات يتيح استخدام الحقل tag للأدلة التي تتم مراقبتها

  • قابل للكتابة

    قيمة منطقية اختيارية

    ما إذا كان نظام الملفات يتيح العمليات التي قد تغيّر محتوى نظام الملفات (مثل إنشاء الملفات أو حذفها أو الكتابة فيها)

MoveEntryRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

  • sourcePath

    سلسلة

    يمثّل هذا الحقل مسار المصدر للإدخال المطلوب نقله إلى مكان جديد.

  • targetPath

    سلسلة

    مسار الوجهة لعملية النسخ

NotifyOptions

الخصائص

  • changeType

    نوع التغيير الذي حدث للإدخال الذي تم رصده إذا تم حذفها، ستتم إزالة الإدخال المرصود تلقائيًا من قائمة الإدخالات المرصودة.

  • التغييرات

    Change[] اختيارية

    قائمة بالتغييرات التي تم إجراؤها على الإدخالات داخل الدليل الذي تتم مراقبته (بما في ذلك الإدخال نفسه)

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذا التغيير

  • observedPath

    سلسلة

    مسار الإدخال الذي تم رصده

  • المتكرر

    قيمة منطقية

    وضع الإدخال الذي تم رصده

  • علامة

    string اختياري

    علامة الإشعار هذا الحقل مطلوب إذا تم تحميل نظام الملفات باستخدام الخيار supportsNotifyTag. يُرجى العِلم أنّ هذه العلامة ضرورية لتقديم إشعارات بشأن التغييرات التي تم إجراؤها حتى عندما كان النظام متوقفًا عن العمل.

OpenedFile

الخصائص

  • filePath

    سلسلة

    مسار الملف المفتوح

  • الوضع

    ما إذا تم فتح الملف للقراءة أو الكتابة

  • openRequestId

    الرقم

    معرّف طلب يتم استخدامه في طلبات القراءة/الكتابة والإغلاق المتتالية.

OpenFileMode

وضع فتح ملف يستخدمه onOpenFileRequested.

Enum

"READ"

"WRITE"

OpenFileRequestedOptions

الخصائص

  • filePath

    سلسلة

    مسار الملف المطلوب فتحه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • الوضع

    ما إذا كان سيتم استخدام الملف للقراءة أو الكتابة.

  • requestId

    الرقم

    معرّف طلب سيتم استخدامه في طلبات القراءة/الكتابة والإغلاق المتتالية.

ProviderError

رموز الخطأ التي تستخدمها الإضافات في الردود على الطلبات، وكذلك في حال حدوث أخطاء عند استدعاء طرق واجهة برمجة التطبيقات. لتحقيق النجاح، يجب استخدام "OK".

Enum

"حسنًا"

"FAILED"

"IN_USE"

"EXISTS"

"NOT_FOUND"

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"NO_SPACE"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

"SECURITY"

"ABORT"

"NOT_A_FILE"

"NOT_EMPTY"

"INVALID_URL"

"IO"

ReadDirectoryRequestedOptions

الخصائص

  • directoryPath

    سلسلة

    مسار الدليل الذي يتم طلب محتواه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • isDirectory

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة is_directory مطلوبة.

  • mimeType

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة mimeType مطلوبة.

  • modificationTime

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة modificationTime مطلوبة.

  • الاسم

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة name مطلوبة.

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

  • الحجم

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة size مطلوبة.

  • صورة مصغّرة

    قيمة منطقية

    الإصدار 49 من Chrome أو الإصدارات الأحدث

    يجب ضبطها على true إذا كانت قيمة thumbnail مطلوبة.

ReadFileRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • length

    الرقم

    عدد وحدات البايت المطلوب عرضها

  • اقتطاع

    الرقم

    الموضع في الملف (بالبايت) لبدء القراءة منه

  • openRequestId

    الرقم

    معرّف طلب يُستخدَم لفتح الملف

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

RemoveWatcherRequestedOptions

الخصائص

  • entryPath

    سلسلة

    مسار الإدخال الذي تتم مراقبته

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • المتكرر

    قيمة منطقية

    وضع المراقب

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

TruncateRequestedOptions

الخصائص

  • filePath

    سلسلة

    مسار الملف المطلوب اقتطاعه

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • length

    الرقم

    عدد وحدات البايت التي سيتم الاحتفاظ بها بعد اكتمال العملية

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

UnmountOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المطلوب إلغاء تحميله

UnmountRequestedOptions

الخصائص

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المطلوب إلغاء تحميله

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

Watcher

الخصائص

  • entryPath

    سلسلة

    مسار الإدخال الذي تتم مراقبته

  • lastTag

    string اختياري

    العلامة التي استخدمها الإشعار الأخير للمراقب.

  • المتكرر

    قيمة منطقية

    ما إذا كان يجب أن تتضمّن المراقبة جميع الإدخالات الفرعية بشكل متكرّر. يمكن أن تكون القيمة "صحيح" للأدلة فقط.

WriteFileRequestedOptions

الخصائص

  • البيانات

    ArrayBuffer

    مخزن مؤقت للبايتات التي ستتم كتابتها في الملف.

  • fileSystemId

    سلسلة

    معرّف نظام الملفات المرتبط بهذه العملية

  • اقتطاع

    الرقم

    الموضع في الملف (بالبايت) لبدء كتابة وحدات البايت منه.

  • openRequestId

    الرقم

    معرّف طلب يُستخدَم لفتح الملف

  • requestId

    الرقم

    المعرّف الفريد لهذا الطلب

الطُرق

get()

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

تعرض هذه الدالة معلومات حول نظام ملفات باستخدام السمة fileSystemId التي تم تمريرها.

المعلمات

  • fileSystemId

    سلسلة

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (fileSystem: FileSystemInfo) => void

المرتجعات

  • الإصدار 96 من Chrome أو الإصدارات الأحدث

    ردّ الاتصال لتلقّي نتيجة دالة get.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getAll()

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

تعرض هذه الدالة جميع أنظمة الملفات التي تم تحميلها بواسطة الإضافة.

المعلمات

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (fileSystems: FileSystemInfo[]) => void

المرتجعات

  • Promise<FileSystemInfo[]>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    ردّ الاتصال لتلقّي نتيجة دالة getAll.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

mount()

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

يتم تحميل نظام ملفات باستخدام fileSystemId وdisplayName المحدَّدين. سيظهر "displayName" في اللوحة اليمنى من تطبيق "الملفات". يمكن أن يحتوي "displayName" على أي أحرف بما في ذلك "/"، ولكن لا يمكن أن يكون سلسلة فارغة. يجب أن يكون displayName وصفيًا ولكن ليس من الضروري أن يكون فريدًا. يجب ألا يكون fileSystemId سلسلة فارغة.

بناءً على نوع نظام الملفات الذي يتم تحميله، يجب ضبط الخيار source بشكل مناسب.

في حال حدوث خطأ، سيتم ضبط runtime.lastError باستخدام رمز الخطأ المقابل.

المعلمات

  • الخيارات
  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    نتيجة عامة لعملية استدعاء تشير إلى النجاح أو الفشل

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

notify()

Promise الإصدار 45 من Chrome والإصدارات الأحدث
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
  callback?: function,
)
: Promise<void>

يتم إرسال إشعارات بشأن التغييرات في الدليل الذي تتم مراقبته على observedPath في وضع recursive. إذا تم تحميل نظام الملفات باستخدام supportsNotifyTag، يجب توفير tag، ويتم دائمًا الإبلاغ عن جميع التغييرات منذ آخر إشعار، حتى إذا تم إيقاف النظام. يمكن الحصول على العلامة الأخيرة باستخدام getAll.

لاستخدام هذه الميزة، يجب ضبط خيار البيان file_system_provider.notify على "صحيح".

يمكن أن تكون قيمة tag أي سلسلة فريدة لكل مكالمة، لذا من الممكن تحديد آخر إشعار مسجَّل. على سبيل المثال، إذا بدأت الإضافة الموفِّرة بعد إعادة التشغيل، وكانت علامة آخر إشعار مسجَّل تساوي "123"، يجب أن تستدعي notify لجميع التغييرات التي حدثت منذ التغيير الذي تم وضع علامة "123" عليه. لا يمكن أن تكون سلسلة فارغة.

لا يمكن لجميع مقدّمي الخدمات توفير علامة، ولكن إذا كان نظام الملفات يحتوي على سجلّ تغييرات، يمكن أن تكون العلامة مثلاً رقم تغيير أو رقم نسخة معدَّلة.

يُرجى العِلم أنّه في حال إزالة دليل رئيسي، ستتم أيضًا إزالة جميع الإدخالات الفرعية، وإذا كانت خاضعة للمراقبة، يجب إبلاغ واجهة برمجة التطبيقات بذلك. بالإضافة إلى ذلك، في حال إعادة تسمية دليل، تتم إزالة جميع الإدخالات التابعة له، لأنّه لم يعُد هناك أي إدخال ضمن مساراتها الأصلية.

في حال حدوث خطأ، سيتم ضبط runtime.lastError على رمز الخطأ المقابل.

المعلمات

  • الخيارات
  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    نتيجة عامة لعملية استدعاء تشير إلى النجاح أو الفشل

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

unmount()

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

لإلغاء تحميل نظام ملفات باستخدام fileSystemId المحدّد يجب استدعاؤها بعد استدعاء onUnmountRequested. ويمكن أيضًا أن تقرّر الإضافة التي توفّر نظام الملفات إلغاء تحميله بدون طلب ذلك (مثلاً في حال انقطاع الاتصال أو حدوث خطأ في الملف).

في حال حدوث خطأ، سيتم ضبط runtime.lastError باستخدام رمز الخطأ المقابل.

المعلمات

  • الخيارات
  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    نتيجة عامة لعملية استدعاء تشير إلى النجاح أو الفشل

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

الفعاليات

onAbortRequested

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

يتم عرض هذا الخطأ عند طلب إلغاء عملية باستخدام operationRequestId. يجب إيقاف العملية التي تم تنفيذها باستخدام operationRequestId على الفور وتنفيذ successCallback لطلب الإلغاء هذا. إذا تعذّر الإلغاء، يجب استدعاء errorCallback. يُرجى العِلم أنّه يجب عدم استدعاء عمليات ردّ الاتصال للعملية التي تم إلغاؤها، لأنّه سيتم تجاهلها. على الرغم من استدعاء errorCallback، قد يتم إلغاء الطلب بالقوة.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onAddWatcherRequested

الإصدار 45 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

يتم إرسال هذا الحدث عند طلب إعداد مراقِب دليل جديد. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onCloseFileRequested

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

يتم رفع هذا الاستثناء عندما يُطلب إغلاق ملف تم فتحه سابقًا باستخدام openRequestId.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onConfigureRequested

الإصدار 44 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

يتم عرض هذه الرسالة عند طلب عرض مربّع حوار الإعدادات لـ "fileSystemId". في حال معالجتها، يجب ضبط خيار البيان file_system_provider.configurable على "صحيح".

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onCopyEntryRequested

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

يتم عرضه عند طلب نسخ إدخال (بشكل متكرر إذا كان دليلاً). في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onCreateDirectoryRequested

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

يتم إرسال هذا الحدث عند طلب إنشاء دليل. يجب أن يتعذّر تنفيذ العملية مع ظهور الخطأ EXISTS إذا كان الدليل المستهدف متوفّرًا من قبل. إذا كانت قيمة recursive صحيحة، يجب إنشاء جميع الأدلة غير المتوفّرة في مسار الدليل.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onCreateFileRequested

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

يتم إرسال هذا الحدث عند طلب إنشاء ملف. إذا كان الملف متوفّرًا من قبل، يجب استدعاء errorCallback باستخدام رمز الخطأ "EXISTS".

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onDeleteEntryRequested

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

يتم عرضه عند طلب حذف إدخال. إذا كانت قيمة recursive صحيحة، وكان الإدخال دليلاً، يجب حذف جميع الإدخالات داخله بشكل متكرر أيضًا.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onExecuteActionRequested

الإصدار 48 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

يتم عرض هذا الخطأ عند طلب تنفيذ إجراء لمجموعة من الملفات أو الأدلة. بعد اكتمال الإجراء، يجب استدعاء successCallback. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onGetActionsRequested

الإصدار 48 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

يتم رفع هذا الحدث عند طلب قائمة بالإجراءات لمجموعة من الملفات أو الأدلة في entryPaths. يجب أن تكون جميع الإجراءات التي تم عرضها قابلة للتطبيق على كل إدخال. وفي حال عدم توفّر هذه الإجراءات، يجب عرض مصفوفة فارغة. يجب عرض الإجراءات مع طلب successCallback. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      (actions: Action[]) => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onGetMetadataRequested

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

يتم عرض هذا الخطأ عند طلب البيانات الوصفية لملف أو دليل في entryPath. يجب عرض البيانات الوصفية مع طلب successCallback. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

onMountRequested

الإصدار 44 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

يتم إرسال هذا الحدث عند طلب عرض مربّع حوار لتثبيت نظام ملفات جديد. إذا كانت الإضافة أو التطبيق معالِج ملفات، يجب عدم معالجة هذا الحدث. بدلاً من ذلك، يجب معالجة app.runtime.onLaunched من أجل تحميل أنظمة ملفات جديدة عند فتح ملف. بالنسبة إلى عمليات التثبيت المتعددة، يجب ضبط خيار بيان file_system_provider.multiple_mounts على "صحيح".

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onMoveEntryRequested

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

يتم عرضه عند طلب نقل إدخال (بشكل متكرر إذا كان دليلاً). في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onOpenFileRequested

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

يتم عرض هذه الرسالة عند طلب فتح ملف في filePath. إذا لم يكن الملف متاحًا، ستتعذّر العملية. يمكن تحديد الحد الأقصى لعدد الملفات المفتوحة في آنٍ واحد باستخدام MountOptions.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      (metadata?: EntryMetadata) => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onReadDirectoryRequested

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

يتم رفع هذا الحدث عند طلب محتوى دليل في directoryPath. يجب عرض النتائج في مجموعات من خلال طلب successCallback عدة مرات. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      (entries: EntryMetadata[], hasMore: boolean) => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onReadFileRequested

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

يتم عرض هذا الخطأ عند طلب قراءة محتوى ملف تم فتحه سابقًا باستخدام openRequestId. يجب عرض النتائج في أجزاء من خلال استدعاء successCallback عدة مرات. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

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

      • البيانات

        ArrayBuffer

      • hasMore

        قيمة منطقية

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onRemoveWatcherRequested

الإصدار 45 من Chrome أو الإصدارات الأحدث
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

يتم عرضه عندما يجب إزالة المراقب. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onTruncateRequested

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

يتم عرضه عند طلب اقتطاع ملف إلى طول معيّن. في حال حدوث خطأ، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onUnmountRequested

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

يتم عرض هذا الخطأ عند طلب إلغاء تحميل نظام الملفات الذي يحمل المعرّف fileSystemId. في الردّ، يجب استدعاء طريقة واجهة برمجة التطبيقات unmount مع successCallback. إذا تعذّر إلغاء التثبيت (مثلاً بسبب عملية معلّقة)، يجب استدعاء errorCallback.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void

onWriteFileRequested

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

يتم عرض هذا الخطأ عند طلب كتابة محتوى في ملف تم فتحه سابقًا باستخدام openRequestId.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

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

    • الخيارات
    • successCallback

      دالة

      تظهر المَعلمة successCallback على النحو التالي:

      () => void

    • errorCallback

      دالة

      تظهر المَعلمة errorCallback على النحو التالي:

      (error: ProviderError) => void