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

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

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

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

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

ضبط وظائف بديلة عن SDCard

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

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

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

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

هناك أسباب عديدة لإيقاف SDCardFS نهائيًا.

الثبات

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

التكافؤ مع المصدر الرئيسي

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

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

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