הוצאה משימוש של SDCardFS

ה-API של SDCardFS הוצא משימוש במכשירים שהושקעו עם Android מגרסה 11 ואילך, שפועלים עם ליבת גרסה 5.4 ואילך. במכשירים כאלה, בדיקת VTS לא מאפשרת מערכות קבצים טעונות שרשומות כ-SDCardFS. במכשירים שהושקעו עם Android מגרסה 11 ואילך, אבל פועלים עם ליבת גרסת 4.19 ואילך, אפשר להמשיך להשתמש ב-SDCardFS, אבל Google לא מספקת תמיכה נוספת.

לפני ההוצאה משימוש, ה-SDCardFS סיפק דרך לשלוט בגישה לאחסון פנימי ממולא ולכרטיסי SD חיצוניים, ומאפשר לאפליקציות לגשת רק לנתונים הרלוונטיים להן. בנוסף, הוא סיפק שכבת התעלמות מאותיות רישיות, וגם מעקב נוסף אחרי נפח האחסון.

פונקציונליות החלופי של SDCardFS

החלופה ל-SDCardFS משתמשת בכמה תכונות של מערכת הקבצים של ליבה של Linux כדי להשיג תוצאות דומות. התלות באותיות רישיות מטופלת ישירות על ידי מערכת הקבצים. כתוצאה מכך, זמני החיפוש כמעט זהים בתיקיות שלא תלויות אותיות רישיות (case-sensitive) ובתיקיות שלא תלויות-רישיות, והאטת ההאטה הגדולה של תיקיות מ-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. התיקונים האלה גורמים לתהליך עבודה נוסף לקבלת שינויים ב-upstream באזורים האלה. אפשר לשכפל את התכונות של SDCardFS באמצעות רכיבים במקור, וכך למנוע את נקודת החולשה הזו.

תאימות תכונות ל-API

בגרסה הקודמת של Android, השימוש בנפח האחסון הגביל את הגישה לסוגים מסוימים של מטא-נתונים. גישה ישירה לאחסון דרך SDCardFS לא תומכת בתכונות האחסון ברמת ההיקף האלה.