SDCardFS در دستگاههایی که با Android 11 یا بالاتر راهاندازی میشوند و هسته نسخه 5.4 یا بالاتر را اجرا میکنند منسوخ شده است. در چنین دستگاههایی، آزمایش VTS اجازه نمیدهد سیستمهای فایل نصب شده فهرستشده بهعنوان SDCardFS. دستگاههایی که با Android 11 یا بالاتر راهاندازی میشوند اما نسخه هسته 4.19 یا پایینتر را اجرا میکنند، میتوانند همچنان از SDCardFS استفاده کنند، اما Google پشتیبانی اضافی ارائه نمیکند.
قبل از منسوخ شدن، SDCardFS راهی برای کنترل دسترسی به حافظه داخلی شبیهسازی شده و کارتهای SD خارجی ارائه کرد که به برنامهها اجازه میداد فقط به دادههای مربوط به آنها دسترسی داشته باشند. علاوه بر این، لایه ای از حساسیت به حروف کوچک و همچنین مقداری ردیابی ذخیره سازی اضافی را ارائه می دهد.
قابلیت جایگزینی SDCardFS
جایگزینی برای SDCardFS از چندین ویژگی سیستم فایل هسته لینوکس برای دستیابی به نتایج مشابه استفاده می کند. عدم حساسیت به حروف به طور مستقیم توسط فایل سیستم مدیریت می شود. این باعث میشود زمانهای جستجو در پوشههای حساس به حروف کوچک و بزرگ تقریباً یکسان باشد و کاهش سرعت پوشه بزرگ از 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 برای پشتیبانی از تغییر گزینهها در پایههای bind نیاز دارد. این وصله ها باعث کار اضافی برای پذیرش تغییرات بالادستی در این مناطق می شود. ویژگیهای SDCardFS را میتوان توسط مؤلفههای بالادستی تکرار کرد و این نقطه درد را از بین برد.
برابری ویژگی با API
در نسخه قبلی اندروید، فضای ذخیرهسازی دامنه دسترسی به انواع خاصی از ابرداده را محدود میکرد. دسترسی مستقیم به فضای ذخیره سازی از طریق SDCardFS از این ویژگی های فضای ذخیره سازی پشتیبانی نمی کند.