ה-API של SDCardFS הוצא משימוש במכשירים שהושקעו עם Android מגרסה 11 ואילך, שפועלים עם ליבת גרסה 5.4 ואילך. במכשירים כאלה, בדיקת VTS לא מאפשרת להשתמש במערכות קבצים מותקנות שמופיעות בתור SDCardFS. במכשירים שהושקעו עם Android מגרסה 11 ואילך, אבל פועלים עם ליבת גרסת 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)
אזהרה: אין לבצע את הפעולה הזו במכשירים שהושקו עם Android מגרסה 10 ואילך, כי המערכת של מערכת הקבצים לא מבדילה בין אותיות רישיות לאותיות רגילות, והיא לא תואמת להגדרות ההצפנה שמבוססות על קבצים שמשמשות במכשירים כאלה. צריך להמשיך להשתמש ב-SDCardFS במכשירים כאלה.
סיבות להוצאה משימוש של SDCardFS
יש כמה סיבות להוצאה משימוש של SDCardFS.
יציבות
ב-SDCardFS יש כמה תנאי מרוץ שקשורים לתלות באותיות רישיות, וגם כמה בעיות שקשורות למצבים של זיכרון נמוך. חיפושים ללא מודעות לאותיות רישיות יכולים להיות איטיים למדי בספריות גדולות, כי החיפושים צריכים לעבור על כל הספריות ברמה הנמוכה יותר כדי למצוא אותיות רישיות חלופיות. גם גישה למערכת הקבצים העליונה ולמערכת הקבצים התחתונה בו-זמנית עלולה לגרום לבעיות.
תאימות ל-upstream
כדי לתמוך בשינוי אפשרויות בהתקנות של קישורים (bind), נדרשים תיקונים נוספים ל-VFS ב-SDCardFS. התיקונים האלה גורמים לעבודה נוספת כדי לקבל שינויים במקור של האזורים האלה. אפשר לשכפל את התכונות של SDCardFS באמצעות רכיבים במקור, וכך למנוע את נקודת החולשה הזו.
שוויון תכונות ל-API
בגרסה הקודמת של Android, האחסון המוגבל הוגבל לגישה לסוגים מסוימים של מטא-נתונים. גישה ישירה לאחסון דרך SDCardFS לא תומכת בתכונות האחסון ברמת ההיקף האלה.