إيقاف واجهة برمجة التطبيقات SDCardFS نهائيًا

تم إيقاف SDCardFS نهائيًا على الأجهزة التي تعمل بالإصدار 11 من نظام التشغيل Android أو الإصدارات الأحدث منه والتي تعمل بإصدار النواة 5.4 أو الإصدارات الأحدث. على هذه الأجهزة، لا يسمح اختبار VTS بأنظمة الملفات المثبَّتة والمدرَجة باسم SDCardFS. يمكن للأجهزة التي تعمل بالإصدار 11 من نظام التشغيل Android أو الإصدارات الأحدث ولكنها تستخدم الإصدار 4.19 أو إصدارًا أقدم من النواة مواصلة استخدام SDCardFS، ولكن لا تقدّم Google دعمًا إضافيًا.

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

وظائف بديلة لنظام SDCardFS

يستخدم بديل SDCardFS العديد من ميزات نظام ملفات نواة Linux لتحقيق نتائج مماثلة. يتعامل نظام الملفات مباشرةً مع عدم حساسية حالة الأحرف، ما يؤدي إلى تطابق أوقات البحث تقريبًا في المجلدات التي تتضمّن أحرفًا حساسة وغير حساسة، وبالتالي إزالة مشكلة البطء في المجلدات الكبيرة من SDCardFS. تم الآن ضبط ميزة تتبُّع الحصة التي كان ينفّذها نظام SDCardFS لجمع بيانات التخزين بسرعة من أجل الإعدادات من مساحة المستخدم باستخدام حصص المشاريع. في بعض السياقات التي تتطلّب أداءً عاليًا، يتم ربط الأدلة وتثبيتها في مكانها. يوفر تطبيق جديد لنظام الملفات في مساحة المستخدم (FUSE) مساحة تخزين محددة النطاق للوصول المباشر إلى نظام الملفات، وذلك بشكل أساسي لإخفاء معلومات الموقع الجغرافي.

ضبط وظيفة استبدال بطاقة SD

لتفعيل حصص المشاريع وتجاهل حالة الأحرف في مساحة التخزين المحاكية بدون SDCardFS على جهاز تم إطلاقه بنظام التشغيل Android 11 أو إصدار أحدث، يجب أن يتم التوريث من emulated_storage.mk في ملف device.mk:

$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)

تحذير: لا تنفِّذ هذه الخطوة على الأجهزة التي تم طرحها مع الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم، لأنّ ميزة عدم الحساسية لحالة الأحرف الأصلية في نظام الملفات غير متوافقة مع إعدادات التشفير المستند إلى الملفات المستخدَمة على هذه الأجهزة. من الضروري مواصلة استخدام SDCardFS على هذه الأجهزة.

أسباب إيقاف SDCardFS نهائيًا

هناك أسباب مختلفة لإيقاف SDCardFS نهائيًا.

الثبات

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

Upstream parity

يتطلّب نظام SDCardFS تصحيحات إضافية لنظام VFS من أجل إتاحة تغيير الخيارات في عمليات الربط. تتسبّب هذه التصحيحات في بذل جهد إضافي لقبول التغييرات الواردة من المصدر في هذه المجالات. يمكن تكرار ميزات SDCardFS من خلال المكوّنات الأولية، ما يزيل هذه المشكلة.

التوافق مع واجهة برمجة التطبيقات

في الإصدار السابق من Android، كانت ميزة "مساحة التخزين المحصورة" تحدّ من إمكانية الوصول إلى أنواع معيّنة من بيانات التعريف. لا يتيح الوصول المباشر إلى مساحة التخزين من خلال SDCardFS استخدام ميزات مساحة التخزين المحصورة هذه.