الوصف
استخدِم واجهة برمجة التطبيقات chrome.fileSystemProvider
لإنشاء أنظمة الملفات التي يمكن الوصول إليها من خلال مدير الملفات على نظام التشغيل ChromeOS.
الأذونات
fileSystemProvider
مدى التوفّر
البيان
يجب تعريف السمة "fileSystemProvider". والقسم في بيان الإضافة لاستخدام واجهة برمجة تطبيقات موفر نظام الملفات. على سبيل المثال:
{
"name": "My extension",
...
"permissions": [
"fileSystemProvider"
],
...
"file_system_provider_capabilities": {
"configurable": true,
"watchable": false,
"multiple_mounts": true,
"source": "network"
},
...
}
يجب تعريف قسم file_system_provider على النحو التالي:
configurable
(منطقية) - اختياري- ما إذا كان من الممكن إجراء عملية الضبط عبر onConfigurerequired. الإعداد التلقائي هو "خطأ".
multiple_mounts
(منطقية) - اختياري- ما إذا كان متوافقًا مع أنظمة ملفات متعددة (أكثر من نظام) الإعداد التلقائي هو "خطأ".
watchable
(منطقية) - اختياري- يتاح تحديد ما إذا كان إعداد المشاهدين وإرسال الإشعارات بشأن التغييرات متاحًا. الإعداد التلقائي هو "خطأ".
source
(تعداد "الملف" أو "الجهاز" أو "الشبكة") - مطلوب- مصدر البيانات لأنظمة الملفات المُثبَّتة
يستخدم تطبيق Files المعلومات المذكورة أعلاه لعرض عناصر واجهة المستخدم ذات الصلة بشكل مناسب. على سبيل المثال، إذا تم ضبط configurable
على "صحيح"، سيظهر عنصر قائمة لضبط وحدات التخزين. وبالمثل، إذا تم ضبط multiple_mounts
على true
، سيسمح تطبيق Files بإضافة أكثر من نقطة تثبيت واحدة من واجهة المستخدم. إذا كانت قيمة watchable
هي false
، سيظهر زر إعادة التحميل. لاحظ أنه إذا أمكن، يجب إضافة دعم إلى العارضين، بحيث تنعكس التغييرات التي يتم إجراؤها على نظام الملفات على الفور وتلقائيًا.
نظرة عامة
تسمح واجهة برمجة تطبيقات موفر نظام الملفات للإضافات بدعم أنظمة الملفات الافتراضية، المتاحة في مدير الملفات على نظام التشغيل ChromeOS. وتتضمن حالات الاستخدام فك ضغط الأرشيفات والوصول إلى الملفات في خدمة سحابية غير Drive.
تثبيت أنظمة الملفات
يمكن أن يؤدي تقديم الإضافات إلى توفير محتوى نظام الملفات من مصدر خارجي (مثل خادم بعيد أو جهاز USB) أو استخدام ملف محلي (مثل الأرشيف) كإدخال له.
لكتابة أنظمة الملفات التي هي معالِجات الملفات (المصدر هو "file"
)، يجب أن يكون الموفّر تطبيقًا مجمّعًا، لأنّ حدث onLaunched
غير متاح للإضافات.
إذا كان المصدر هو شبكة أو جهاز، يجب تثبيت نظام الملفات عند استدعاء حدث onMountRequested.
مصدر بيانات نظام الملفات | نقطة الإدخال |
---|---|
"file" |
متاحة للتطبيقات المجمّعة فقط. |
"device" أو "network" |
onMountRequested |
تكوين أنظمة الملفات
بعد تحميل أنظمة الملفات المقدَّمة، يمكن ضبطها من خلال حدث onConfigureRequested. وهو مفيد بشكل خاص لأنظمة الملفات التي توفر محتويات عبر الشبكة لتعيين بيانات الاعتماد المناسبة. إنّ التعامل مع هذا الحدث اختياري.
رحلة المستخدِم
يتذكر Chrome أنظمة الملفات المقدمة بعد تحميلها وتتم إعادة تحميلها تلقائيًا بعد إعادة التشغيل أو إعادة التشغيل. وبالتالي، بعد تثبيت نظام الملفات من خلال إضافة تقديم، سيبقى حتى يتم إلغاء تحميل الإضافة أو تطلب الإضافة طريقة إلغاء التثبيت.
الأنواع
AbortRequestedOptions
أماكن إقامة
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
operationRequestId
الرقم
رقم تعريف الطلب المطلوب إلغائه
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
Action
أماكن إقامة
-
id
سلسلة
معرّف الإجراء. أي سلسلة أو
CommonActionId
للإجراءات الشائعة. -
title
سلسلة اختيارية
عنوان الإجراء. وقد يتم تجاهله في الإجراءات الشائعة.
AddWatcherRequestedOptions
أماكن إقامة
-
entryPath
سلسلة
مسار الإدخال المطلوب ملاحظته.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
المتكرر
منطقي
تحدّد ما إذا كانت الملاحظة يجب أن تتضمّن جميع الإدخالات الفرعية بشكل متكرّر. ويمكن أن ينطبق هذا على الأدلة فقط.
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
Change
أماكن إقامة
-
changeType
نوع التغيير الذي حدث على الإدخال.
-
cloudFileInfo
CloudFileInfo اختيارية
الإصدار 125 من Chrome أو الإصدارات الأحدثهي معلومات حول الملف إذا كانت مدعومة بنظام ملفات على السحابة الإلكترونية.
-
entryPath
سلسلة
مسار الإدخال الذي تم تغييره.
ChangeType
نوع التغيير الذي تم رصده في الدليل المرصود.
Enum
"تم التغيير"
"محذوفة"
CloseFileRequestedOptions
أماكن إقامة
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
openRequestId
الرقم
رقم تعريف طلب مستخدَم لفتح الملف
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
CloudFileInfo
أماكن إقامة
-
versionTag
سلسلة اختيارية
علامة تمثل إصدار الملف.
CloudIdentifier
أماكن إقامة
-
id
سلسلة
معرّف الموفِّر للملف أو الدليل المحدّد
-
providerName
سلسلة
معرّف مقدّم مساحة التخزين في السحابة الإلكترونية (مثل "drive.google.com")
CommonActionId
قائمة الإجراءات الشائعة. تم تصميم "SHARE"
لمشاركة الملفات مع الآخرين. "SAVE_FOR_OFFLINE"
للتثبيت (الحفظ للوصول بلا إنترنت). "OFFLINE_NOT_NECESSARY"
للإشعار بأن الملف لا يلزم تخزينه للوصول إليه بلا اتصال بالإنترنت بعد الآن. يُستخدَم في onGetActionsRequested
وonExecuteActionRequested
.
Enum
"SAVE_FOR_OFFLINE"
"OFFLINE_NOT_NECESSARY"
"مشاركة"
ConfigureRequestedOptions
أماكن إقامة
-
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
وكان الملف محميًا بالسحابة الإلكترونية. وبالنسبة إلى الملفات المحلية التي لا تتوفّر لها مساحة تخزين في السحابة الإلكترونية، يجب أن تكون غير محددة عند طلبها. -
الدليل
قيمة منطقية اختيارية
True إذا كان دليلاً. يجب تقديمه إذا لزم الأمر في
options
. -
mimeType
سلسلة اختيارية
نوع Mime للمدخل اختيارية دائمًا، ولكن يجب تقديمها عند طلبها في
options
. -
modificationTime
التاريخ اختياري
وقت آخر تعديل لهذا الإدخال. يجب تقديمه إذا لزم الأمر في
options
. -
الاسم
سلسلة اختيارية
اسم هذا الإدخال (وليس اسم المسار الكامل). يجب ألا يحتوي على '/'. بالنسبة إلى الجذر، يجب أن يكون فارغًا. يجب تقديمه إذا لزم الأمر في
options
. -
الحجم
الرقم اختياري
حجم الملف بالبايت. يجب تقديمه إذا لزم الأمر في
options
. -
thumbnail
سلسلة اختيارية
صورة مصغّرة كمعرّف موارد منتظم (URI) للبيانات بتنسيق PNG أو JPEG أو WEBP، ويبلغ حجمها 32 كيلوبايت كحد أقصى اختيارية، ولكن لا يمكن تقديمها إلا عندما يطلبها حدث
onGetMetadataRequested
صراحةً.
ExecuteActionRequestedOptions
أماكن إقامة
-
actionId
سلسلة
معرّف الإجراء المطلوب تنفيذه.
-
entryPaths
سلسلة[]
الإصدار 47 من Chrome أو الإصدارات الأحدثمجموعة مسارات الإدخالات التي سيتم استخدامها في الإجراء.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
FileSystemInfo
أماكن إقامة
-
displayName
سلسلة
يشير ذلك المصطلح إلى اسم نظام الملفات يمكن لشخص عادي قراءته.
-
fileSystemId
سلسلة
معرّف نظام الملفات.
-
openedFiles
قائمة بالملفات المفتوحة حاليًا
-
openedFilesLimit
الرقم
الحد الأقصى لعدد الملفات التي يمكن فتحها في آنٍ واحد. في حال كانت القيمة 0، لا يتم وضعها ضمن الحدّ الأقصى.
-
supportsNotifyTag
قيمة منطقية اختيارية
الإصدار 45 من Chrome أو الإصدارات الأحدثيحدِّد ذلك ما إذا كان نظام الملفات يتيح استخدام الحقل
tag
لرصد الدلائل. -
المشاهدون
المُشاهد[]
الإصدار 45 من Chrome أو الإصدارات الأحدثقائمة بالمشاهدين.
-
قابل للكتابة
منطقي
ما إذا كان نظام الملفات يدعم العمليات التي قد تؤدي إلى تغيير محتوى نظام الملفات (مثل إنشاء الملفات أو حذفها أو الكتابة إليها).
GetActionsRequestedOptions
أماكن إقامة
-
entryPaths
سلسلة[]
الإصدار 47 من Chrome أو الإصدارات الأحدثقائمة مسارات الإدخالات لقائمة الإجراءات.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
GetMetadataRequestedOptions
أماكن إقامة
-
cloudFileInfo
منطقي
الإصدار 125 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةcloudFileInfo
. -
cloudIdentifier
منطقي
الإصدار 117 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةcloudIdentifier
. -
entryPath
سلسلة
مسار الإدخال لاسترجاع بيانات وصفية عنه.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
الدليل
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةis_directory
. -
mimeType
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةmimeType
. -
modificationTime
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةmodificationTime
. -
الاسم
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةname
. -
requestId
الرقم
المعرّف الفريد لهذا الطلب.
-
الحجم
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةsize
. -
thumbnail
منطقي
يتم ضبطها على
true
في حال طلب قيمةthumbnail
.
MountOptions
أماكن إقامة
-
displayName
سلسلة
يشير ذلك المصطلح إلى اسم نظام الملفات يمكن لشخص عادي قراءته.
-
fileSystemId
سلسلة
مُعرّف السلسلة في نظام الملفات. يجب أن تكون فريدة لكل إضافة.
-
openedFilesLimit
الرقم اختياري
الحد الأقصى لعدد الملفات التي يمكن فتحها في آنٍ واحد. إذا لم يتم تحديد قيمة، أو 0، فلن تكون محدودة.
-
مستمر
قيمة منطقية اختيارية
الإصدار 64 من Chrome أو الإصدارات الأحدثما إذا كان يجب أن يستأنف إطار العمل نظام الملفات في جلسة تسجيل الدخول التالية. True بشكل افتراضي.
-
supportsNotifyTag
قيمة منطقية اختيارية
الإصدار 45 من Chrome أو الإصدارات الأحدثتحدّد هذه السمة ما إذا كان نظام الملفات يتيح استخدام الحقل
tag
للأدلة التي تم تتبّعها. -
قابل للكتابة
قيمة منطقية اختيارية
ما إذا كان نظام الملفات يدعم العمليات التي قد تؤدي إلى تغيير محتوى نظام الملفات (مثل إنشاء الملفات أو حذفها أو الكتابة إليها).
MoveEntryRequestedOptions
أماكن إقامة
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
-
sourcePath
سلسلة
مسار مصدر المدخل المطلوب نقله إلى مكان جديد.
-
targetPath
سلسلة
هو مسار الوجهة لعملية النسخ.
NotifyOptions
أماكن إقامة
-
changeType
نوع التغيير الذي حدث للإدخال الذي تم رصده. إذا تم حذفه، ستتم إزالة الإدخال الذي تم رصده تلقائيًا من قائمة الإدخالات التي تم رصدها.
-
التغييرات
تغيير[] اختياري
قائمة التغييرات التي طرأت على الإدخالات داخل الدليل المرصود (بما في ذلك الإدخال نفسه)
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذا التغيير
-
observedPath
سلسلة
مسار الإدخال الذي تم رصده.
-
المتكرر
منطقي
وضع الإدخال المرصود.
-
علامة
سلسلة اختيارية
علامة للإشعار. هذا الحقل مطلوب إذا تم تثبيت نظام الملفات مع الخيار
supportsNotifyTag
. تجدر الإشارة إلى أنّ هذه العلامة ضرورية لتقديم إشعارات بشأن التغييرات التي تغيّرت حتى عند إيقاف تشغيل النظام.
OpenedFile
أماكن إقامة
-
filePath
سلسلة
مسار الملف المفتوح.
-
الوضع
ما إذا تم فتح الملف للقراءة أو الكتابة.
-
openRequestId
الرقم
رقم تعريف طلب ليتم استخدامه من خلال طلبات القراءة/الكتابة والإغلاق المتتالية.
OpenFileMode
وضع فتح ملف يستخدِمه onOpenFileRequested
.
Enum
"قراءة"
"كتابة"
OpenFileRequestedOptions
أماكن إقامة
-
filePath
سلسلة
مسار الملف المراد فتحه.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
الوضع
ما إذا كان سيتم استخدام الملف للقراءة أو الكتابة.
-
requestId
الرقم
رقم تعريف طلب يتم استخدامه من خلال طلبات القراءة/الكتابة والإغلاق المتتالية.
ProviderError
رموز الخطأ التي يتم استخدامها من خلال تقديم إضافات استجابةً للطلبات وكذلك في حال حدوث أخطاء عند استدعاء طرق واجهة برمجة التطبيقات. لتحقيق النجاح، يجب استخدام "OK"
.
Enum
"حسنًا"
"تعذّر"
"IN_USE"
"EXISTS"
"NOT_FOUND"
"ACCESS_DENIED"
"TOO_MANY_OPENED"
"NO_MEMORY"
"NO_SPACE"
"NOT_A_DIRECTORY"
"DE_OPERATION"
"الأمان"
"ABORT"
"NOT_A_FILE"
"NOT_EMPTY"
"ضي_URL"
"IO"
ReadDirectoryRequestedOptions
أماكن إقامة
-
directoryPath
سلسلة
مسار الدليل الذي سيتم طلب المحتوى فيه.
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
الدليل
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةis_directory
. -
mimeType
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةmimeType
. -
modificationTime
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةmodificationTime
. -
الاسم
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةname
. -
requestId
الرقم
المعرّف الفريد لهذا الطلب.
-
الحجم
منطقي
الإصدار 49 من Chrome أو الإصدارات الأحدثيتم ضبطها على
true
في حال طلب قيمةsize
. -
thumbnail
منطقي
الإصدار 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
سلسلة اختيارية
العلامة التي استخدمها الإشعار الأخير للمشاهد.
-
المتكرر
منطقي
ما إذا كان يجب أن تتضمّن المشاهدة جميع الإدخالات الفرعية بشكل متكرّر. ويمكن أن ينطبق هذا على الأدلة فقط.
WriteFileRequestedOptions
أماكن إقامة
-
البيانات
مخزن المصفوفات
المخزن المؤقت لوحدات البايت المراد كتابتها في الملف
-
fileSystemId
سلسلة
معرّف نظام الملفات المرتبط بهذه العملية.
-
اقتطاع
الرقم
الموضع في الملف (بالبايت) لبدء كتابة وحدات البايت منه.
-
openRequestId
الرقم
رقم تعريف طلب مستخدَم لفتح الملف
-
requestId
الرقم
المعرّف الفريد لهذا الطلب.
الطُرق
get()
chrome.fileSystemProvider.get(
fileSystemId: string,
callback?: function,
)
تعرض معلومات حول نظام ملفات باستخدام fileSystemId
الذي تم تمريره.
المعلمات
-
fileSystemId
سلسلة
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(fileSystem: FileSystemInfo) => void
-
fileSystem
-
المرتجعات
-
Promise<FileSystemInfo>
الإصدار 96 من Chrome أو الإصدارات الأحدثلا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.
getAll()
chrome.fileSystemProvider.getAll(
callback?: function,
)
تعرض جميع أنظمة الملفات التي تم تحميلها من خلال الإضافة.
المعلمات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(fileSystems: FileSystemInfo[]) => void
-
fileSystems
-
المرتجعات
-
Promise<FileSystemInfo[]>
الإصدار 96 من Chrome أو الإصدارات الأحدثلا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.
mount()
chrome.fileSystemProvider.mount(
options: MountOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى تثبيت نظام ملفات باستخدام fileSystemId
وdisplayName
المحدَّدين. سيتم عرض تطبيق "displayName
" في اللوحة اليمنى من تطبيق "الملفات". يمكن أن يحتوي displayName
على أي أحرف بما في ذلك '/'، ولكن لا يمكن أن يكون سلسلة فارغة. ويجب أن يكون displayName
وصفيًا، وليس من الضروري أن يكون فريدًا. يجب ألا تكون السمة fileSystemId
سلسلة فارغة.
وفقًا لنوع نظام الملفات الذي يتم تحميله، يجب ضبط الخيار source
بشكل مناسب.
وفي حال حدوث خطأ، سيتم ضبط runtime.lastError
مع رمز الخطأ المناسب.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
وعود <باطلة>
الإصدار 96 من Chrome أو الإصدارات الأحدثلا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.
notify()
chrome.fileSystemProvider.notify(
options: NotifyOptions,
callback?: function,
)
يتم إرسال إشعار بشأن التغييرات في دليل المشاهدة في observedPath
في وضع recursive
. إذا تم تثبيت نظام الملفات باستخدام supportsNotifyTag
، يجب تقديم tag
، وسيتم دائمًا الإبلاغ عن جميع التغييرات منذ آخر إشعار، حتى إذا تم إيقاف تشغيل النظام. يمكن الحصول على العلامة الأخيرة باستخدام getAll
.
لاستخدام هذه الميزة، يجب ضبط خيار البيان file_system_provider.notify
على "صحيح".
ويمكن أن تكون قيمة tag
أي سلسلة فريدة لكل استدعاء، لذا من الممكن تحديد آخر إشعار مسجَّل. على سبيل المثال: إذا بدأت عملية تقديم الإضافة بعد إعادة التشغيل، وكانت علامة الإشعار المسجَّلة الأخيرة تساوي "123"، من المفترض أن تطلب القيمة notify
لجميع التغييرات التي حدثت منذ تاريخ التغيير الذي تم وضع علامة "123" عليه. ولا يمكن أن تكون سلسلة فارغة.
لا يمكن لجميع موفري الخدمات تقديم علامة، ولكن إذا كان نظام الملفات يحتوي على سجل تغييرات، يمكن أن تكون العلامة على سبيل المثال: أو رقم تغيير أو رقم مراجعة.
لاحظ أنه في حال إزالة دليل رئيسي، تتم أيضًا إزالة جميع الإدخالات التابعة، وإذا تمت مشاهدتها، يجب إشعار واجهة برمجة التطبيقات بذلك. وكذلك، إذا تمت إعادة تسمية دليل، فسيتم في الواقع إزالة جميع الإدخالات التابعة، نظرًا لعدم وجود إدخال ضمن مساراتها الأصلية بعد الآن.
في حال حدوث خطأ، سيتم ضبط runtime.lastError
على رمز الخطأ المقابل.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
وعود <باطلة>
الإصدار 96 من Chrome أو الإصدارات الأحدثلا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.
unmount()
chrome.fileSystemProvider.unmount(
options: UnmountOptions,
callback?: function,
)
لإلغاء تثبيت نظام ملفات باستخدام fileSystemId
المحدّد. يجب طلبه بعد استدعاء onUnmountRequested
. بالإضافة إلى ذلك، يمكن أن تقرر الامتداد الذي يتم تقديمه إلغاء التثبيت إذا لم يتم طلبه (على سبيل المثال، في حال انقطاع الاتصال أو حدوث خطأ في الملف).
وفي حال حدوث خطأ، سيتم ضبط runtime.lastError
مع رمز الخطأ المناسب.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
وعود <باطلة>
الإصدار 96 من Chrome أو الإصدارات الأحدثلا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.
فعاليات
onAbortRequested
chrome.fileSystemProvider.onAbortRequested.addListener(
callback: function,
)
يتم إبرازه عند إلغاء عملية باستخدام operationRequestId
. يجب إيقاف العملية التي يتم تنفيذها باستخدام "operationRequestId
" فورًا وتنفيذ successCallback
من طلب الإلغاء هذا. في حال تعذّر الإلغاء، يجب طلب errorCallback
. لاحظ أنه يجب عدم استدعاء استدعاءات العملية التي تم إلغاؤها، حيث سيتم تجاهلها. على الرغم من الاتصال بـ errorCallback
، قد يتم إلغاء الطلب إجباريًا.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: AbortRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onAddWatcherRequested
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
callback: function,
)
يتم إبرازه عند ضبط عارض دليل جديد. في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
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
على النحو التالي:(options: CloseFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onConfigureRequested
chrome.fileSystemProvider.onConfigureRequested.addListener(
callback: function,
)
يتم رفعه عند عرض مربّع حوار إعداد fileSystemId
. وفي حال معالجته، يجب ضبط خيار بيان file_system_provider.configurable
على "صحيح".
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
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
على النحو التالي:(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
على النحو التالي:(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
على النحو التالي:(options: CreateFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onDeleteEntryRequested
chrome.fileSystemProvider.onDeleteEntryRequested.addListener(
callback: function,
)
يتم إبرازه عند طلب حذف إدخال. إذا كانت القيمة recursive
صحيحة، وكان الإدخال دليلاً، فيجب حذف جميع الإدخالات داخله بشكل متكرر أيضًا.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: DeleteEntryRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onExecuteActionRequested
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
callback: function,
)
يتم عرضه عند تنفيذ إجراء على مجموعة من الملفات أو الأدلة. بعد اكتمال الإجراء، يجب استدعاء "successCallback
". في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: ExecuteActionRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onGetActionsRequested
chrome.fileSystemProvider.onGetActionsRequested.addListener(
callback: function,
)
يتم إبرازه عند طلب قائمة بالإجراءات لمجموعة من الملفات أو الأدلة في entryPaths
. يجب أن تنطبق جميع الإجراءات المعروضة على كل إدخال. في حال عدم العثور على مثل هذه الإجراءات، يجب عرض صفيف فارغ. يجب عرض الإجراءات مع استدعاء successCallback
. في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
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
على النحو التالي:(options: GetMetadataRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:(metadata: EntryMetadata) => void
-
البيانات الوصفية
-
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onMountRequested
chrome.fileSystemProvider.onMountRequested.addListener(
callback: function,
)
يتم إبرازه عند عرض مربّع حوار لتثبيت نظام ملفات جديد. إذا كانت الإضافة/التطبيق معالِج ملفات، لن يتم التعامل مع هذا الحدث. بدلاً من ذلك، يجب معالجة app.runtime.onLaunched
لتحميل أنظمة الملفات الجديدة عند فتح أحد الملفات. بالنسبة إلى عمليات التثبيت المتعددة، يجب ضبط خيار البيان file_system_provider.multiple_mounts
على "صحيح".
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(successCallback: function, errorCallback: function) => void
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onMoveEntryRequested
chrome.fileSystemProvider.onMoveEntryRequested.addListener(
callback: function,
)
يتم إبرازه عند نقل إدخال (بشكل متكرر إذا كان هناك دليل). في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
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
على النحو التالي:(options: OpenFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:(metadata?: EntryMetadata) => void
-
البيانات الوصفية
EntryMetadata اختيارية
-
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onReadDirectoryRequested
chrome.fileSystemProvider.onReadDirectoryRequested.addListener(
callback: function,
)
يتم رفعه عند طلب محتوى دليل في directoryPath
. يجب عرض النتائج في مجموعات عن طريق استدعاء successCallback
عدة مرات. في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: ReadDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:(entries: EntryMetadata[], hasMore: boolean) => void
-
الإدخالات
-
hasMore
منطقي
-
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onReadFileRequested
chrome.fileSystemProvider.onReadFileRequested.addListener(
callback: function,
)
يتم طلب إبراز هذا النص عند قراءة محتوى ملف تم فتحه سابقًا باستخدام openRequestId
. يجب عرض النتائج في مجموعات عن طريق استدعاء successCallback
عدة مرات. في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: ReadFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:(data: ArrayBuffer, hasMore: boolean) => void
-
البيانات
مخزن المصفوفات
-
hasMore
منطقي
-
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onRemoveWatcherRequested
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
callback: function,
)
يتم رفعه عند إزالة المُشاهد. في حال حدوث خطأ، يجب استدعاء errorCallback
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
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
على النحو التالي:(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
على النحو التالي:(options: UnmountRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-
onWriteFileRequested
chrome.fileSystemProvider.onWriteFileRequested.addListener(
callback: function,
)
يتم طلب إبراز المحتوى عند كتابة محتوى في ملف تم فتحه سابقًا باستخدام openRequestId
.
المعلمات
-
رد الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(options: WriteFileRequestedOptions, successCallback: function, errorCallback: function) => void
-
الخيارات
-
successCallback
دالة
تظهر المَعلمة
successCallback
على النحو التالي:() => void
-
errorCallback
دالة
تظهر المَعلمة
errorCallback
على النحو التالي:(error: ProviderError) => void
-
خطأ
-
-