SDCardFS est obsolète sur les appareils équipés d'Android 11 ou version ultérieure et exécutant la version 5.4 ou ultérieure du noyau. Sur ces appareils, les tests VTS n'autorisent pas les systèmes de fichiers installés listés comme SDCardFS. Appareils qui démarrent avec Android 11 ou version ultérieure, mais exécutant la version 4.19 ou peuvent continuer à utiliser SDCardFS, mais Google ne fournit pas de l'assistance.
Avant son abandon, SDCardFS permettait de contrôler l'accès aux ressources émulées mémoire de stockage interne et cartes SD externes, permettant aux applications d'accéder uniquement aux données pertinentes pour eux. De plus, il a fourni une couche d'insensibilité à la casse, ainsi qu'un suivi de l'espace de stockage supplémentaire.
Fonctionnalité de remplacement de SDCardFS
Le remplacement de SDCardFS utilise plusieurs fonctionnalités de système de fichiers de kernel Linux pour obtenir des résultats similaires. L'insensibilité à la casse est gérée directement par le système de fichiers les durées de recherche sont donc presque identiques, qu'elles soient sensibles à la casse les dossiers non sensibles à la casse, supprimant le ralentissement des dossiers volumineux de SDCardFS. Le suivi des quotas que SDCardFS effectuait pour collecter rapidement des données de stockage pour les paramètres est désormais configuré à partir de l'espace utilisateur à l'aide de quotas de projet. Dans certains contextes sensibles aux performances, les répertoires sont installés en place. Une nouvelle implémentation de FUSE fournit un espace de stockage cloisonné pour l'accès direct au système de fichiers, principalement pour prendre en charge la suppression des informations de localisation.
Configurer la fonctionnalité de remplacement de carte SD
Pour activer les quotas de projets et le pliage de cas pour le stockage émulé sans SDCardFS
sur un appareil lancé
avec Android 11 ou une version ultérieure,
héritent de emulated_storage.mk
dans le fichier device.mk
:
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
Avertissement : N'effectuez pas cette opération sur les appareils. lancé avec Android 10 ou une version antérieure, l'insensibilité à la casse native du système de fichiers n'est pas compatible avec la les paramètres de chiffrement utilisés sur ces appareils. Vous devez continuer à utiliser SDCardFS sur ces appareils.
Motifs de l'abandon de SDCardFS
Plusieurs raisons justifient l'abandon de SDCardFS.
Stabilité
SDCardFS souffre de plusieurs conditions de concurrence concernant la sensibilité à la casse, ainsi que de certains problèmes liés à une faible quantité de mémoire. Les recherches insensibles à la casse peuvent être assez lentes dans les grands répertoires, car elles doivent parcourir le répertoire inférieur pour trouver d'autres cas. Accéder aux boutons supérieur et inférieur systèmes de fichiers en même temps peut également entraîner des problèmes.
Parité en amont
SDCardFS nécessite des correctifs supplémentaires pour le VFS afin de prendre en charge les options de modification sur les montages de liaison. Ces correctifs nécessitent un travail supplémentaire pour accepter les modifications en amont de ces zones. Les fonctionnalités de SDCardFS peuvent être répliquées par des composants en amont, en supprimant cette difficulté.
Parité des fonctionnalités avec l'API
Dans la version précédente d'Android, le stockage avec portée limitait l'accès à certains types de métadonnées. L'accès direct au stockage via SDCardFS n'accepte pas ces ainsi que des fonctionnalités de stockage cloisonnées.