الوصف
استخدِم واجهة برمجة التطبيقات chrome.syncFileSystem
لحفظ البيانات ومزامنتها على Google Drive. لا تُستخدَم واجهة برمجة التطبيقات هذه للوصول إلى مستندات المستخدمين العشوائية المخزَّنة في Google Drive. وهي توفّر مساحة تخزين قابلة للمزامنة خاصة بالتطبيق لاستخدامها بلا إنترنت وللتخزين المؤقت، ما يتيح توفير البيانات نفسها على جميع الأجهزة المختلفة. يمكنك الاطّلاع على إدارة البيانات لمعرفة المزيد عن استخدام واجهة برمجة التطبيقات هذه.
الأذونات
syncFileSystem
الأنواع
ConflictResolutionPolicy
Enum
"last_write_win"
"manual"
FileInfo
الخصائص
-
إجراء
SyncAction اختياري
إجراء المزامنة الذي تم اتخاذه لتفعيل الحدث
onFileStatusChanged
يمكن أن تكون قيمة الإجراء'added'
أو'updated'
أو'deleted'
. لا ينطبق هذا الإجراء إلا إذا كانت الحالة'synced'
. -
اتجاه
SyncDirection اختياري
تمثّل هذه السمة اتجاه المزامنة للحدث
onFileStatusChanged
. يمكن أن تكون قيمة اتجاه المزامنة'local_to_remote'
أو'remote_to_local'
. لا ينطبق هذا الإجراء إلا إذا كانت الحالة'synced'
. -
fileEntry
إدخال
fileEntry
للملف المستهدف الذي تم تغيير حالته يحتوي على معلومات الاسم والمسار للملف الذي تمت مزامنته. عند حذف الملف، ستظل معلوماتfileEntry
متاحة ولكن لن يعود الملف متوفّرًا. -
status
حالة الملف الناتجة بعد الحدث
onFileStatusChanged
يمكن أن تكون قيمة الحالة'synced'
أو'pending'
أو'conflicting'
.
FileStatus
Enum
"مزامنة"
لا يوجد تعارض ولا توجد تغييرات محلية معلّقة.
"في انتظار المراجعة"
يتضمّن تغييرًا واحدًا أو أكثر في الملف المحلي لم تتم مزامنته.
"متعارض"
يتعارض الملف مع النسخة البعيدة ويجب حلّ التعارض يدويًا.
FileStatusInfo
الخصائص
-
خطأ
سلسلة اختيارية
خطأ اختياري يتم عرضه فقط إذا حدثت مشكلة أثناء استرداد FileStatus للملف المحدّد.
-
fileEntry
إدخال
أحد الإدخالات التي تم تقديمها في الأصل إلى getFileStatuses.
-
status
يمكن أن تكون قيمة الحالة
'synced'
أو'pending'
أو'conflicting'
.
ServiceInfo
الخصائص
-
الوصف
سلسلة
-
الولاية
ServiceStatus
Enum
"جارٍ التهيئة"
تتم تهيئة خدمة المزامنة (مثل استعادة البيانات من قاعدة البيانات والتحقّق من الاتصال والمصادقة على الخدمة وما إلى ذلك).
"قيد التشغيل"
خدمة المزامنة تعمل بشكل سليم.
"authentication_required"
لا تعمل خدمة المزامنة على مزامنة الملفات لأنّ الخدمة البعيدة تتطلّب مصادقة المستخدم للمتابعة.
"temporary_unavailable"
لا تعمل خدمة المزامنة على مزامنة الملفات لأنّ الخدمة البعيدة غير متاحة (مؤقتًا) بسبب بعض الأخطاء التي يمكن إصلاحها، مثل عدم توفّر الشبكة أو تعذّر الوصول إلى الخدمة البعيدة أو توقّفها وما إلى ذلك. يجب تقديم المزيد من التفاصيل من خلال المَعلمة description
في OnServiceInfoUpdated (التي يمكن أن تحتوي على تفاصيل خاصة بالخدمة).
"disabled"
يتم إيقاف خدمة المزامنة ولن تتم مزامنة المحتوى أبدًا. (على سبيل المثال، قد يحدث ذلك عندما لا يكون لدى المستخدم حساب على الخدمة البعيدة أو عندما يواجه خدمة المزامنة خطأً لا يمكن استرداده).
StorageInfo
الخصائص
-
quotaBytes
الرقم
-
usageBytes
الرقم
SyncAction
Enum
"added"
"updated"
"deleted"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
الطُرق
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
تعرض هذه السمة سياسة حل التعارض الحالية.
المعلمات
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(policy: ConflictResolutionPolicy) => void
-
سياسة
-
المرتجعات
-
Promise<ConflictResolutionPolicy>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
تعرض هذه الدالة FileStatus
لقيمة fileEntry
المحدّدة. يمكن أن تكون قيمة الحالة 'synced'
أو 'pending'
أو 'conflicting'
. يُرجى العِلم أنّ حالة 'conflicting'
تحدث فقط عندما يتم ضبط سياسة حل التعارض في الخدمة على 'manual'
.
المعلمات
-
fileEntry
إدخال
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(status: FileStatus) => void
-
status
-
المرتجعات
-
Promise<FileStatus>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
تعرض هذه الدالة كل FileStatus
للصفيف fileEntry
المحدّد. يتم استدعاؤه عادةً مع النتيجة من dirReader.readEntries().
المعلمات
-
fileEntries
object[]
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(status: FileStatusInfo[]) => void
-
status
-
المرتجعات
-
Promise<FileStatusInfo[]>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
تعرِض هذه السمة حالة الخلفية الحالية للمزامنة.
المعلمات
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(status: ServiceStatus) => void
-
status
-
المرتجعات
-
Promise<ServiceStatus>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
تعرض هذه السمة الاستخدام والحصة الحاليَين بالبايت لمساحة تخزين الملفات 'syncable'
الخاصة بالتطبيق.
المعلمات
-
fileSystem
DOMFileSystem
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(info: StorageInfo) => void
-
معلومات
-
المرتجعات
-
Promise<StorageInfo>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
تعرض هذه السمة نظام ملفات قابل للمزامنة ومخزَّنًا في Google Drive. يمكن تشغيل مثيل DOMFileSystem
الذي تم إرجاعه بالطريقة نفسها التي يتم بها تشغيل أنظمة الملفات المؤقتة والدائمة (راجِع http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).
سيؤدي طلب ذلك عدة مرات من التطبيق نفسه إلى عرض المعرّف نفسه لنظام الملفات نفسه.
يُرجى العِلم بأنّ هذا الطلب قد يتعذّر تنفيذه. على سبيل المثال، إذا لم يكن المستخدم مسجّلاً الدخول إلى Chrome أو إذا لم تكن هناك عملية شبكة. للتعامل مع هذه الأخطاء، من المهم التحقّق من chrome.runtime.lastError في دالة الرجوع.
المعلمات
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
المرتجعات
-
Promise<DOMFileSystem>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
تضبط هذه السمة سياسة حل التعارض التلقائية لمساحة تخزين الملفات 'syncable'
الخاصة بالتطبيق. يتم ضبطها تلقائيًا على 'last_write_win'
. عند ضبط سياسة حلّ التعارض على 'last_write_win'
، يتم تلقائيًا حلّ التعارضات في الملفات الحالية في المرة التالية التي يتم فيها تعديل الملف. يمكن تقديم callback
اختياريًا لمعرفة ما إذا كان الطلب ناجحًا أم لا.
المعلمات
-
سياسة
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 117 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
الفعاليات
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
يتم تنشيط هذا الحدث عندما يتم تعديل ملف من خلال خدمة المزامنة في الخلفية.
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(detail: FileInfo) => void
-
التفاصيل
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
يتم تنشيط هذا الحدث عند حدوث خطأ أو تغيير آخر في الحالة في الخلفية الخاصة بالمزامنة (على سبيل المثال، عندما يتم إيقاف المزامنة مؤقتًا بسبب خطأ في الشبكة أو المصادقة).
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(detail: ServiceInfo) => void
-
التفاصيل
-