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