Penghentian SDCardFS

SDCardFS tidak digunakan lagi pada perangkat yang diluncurkan dengan Android 11 atau lebih tinggi dan menjalankan kernel versi 5.4 atau lebih tinggi. Pada perangkat tersebut, pengujian VTS tidak mengizinkan sistem file terpasang yang terdaftar sebagai SDCardFS. Perangkat yang diluncurkan dengan Android 11 atau lebih tinggi tetapi menjalankan kernel versi 4.19 atau lebih rendah dapat terus menggunakan SDCardFS, namun Google tidak memberikan dukungan tambahan.

Sebelum penghentiannya, SDCardFS menyediakan cara untuk mengontrol akses ke penyimpanan internal dan kartu SD eksternal yang ditiru, sehingga memungkinkan aplikasi hanya mengakses data yang relevan dengannya. Selain itu, ini memberikan lapisan ketidakpekaan huruf besar-kecil, serta beberapa pelacakan penyimpanan tambahan.

Fungsionalitas penggantian SDCardFS

Pengganti SDCardFS menggunakan beberapa fitur sistem file kernel Linux untuk mencapai hasil yang serupa. Ketidakpekaan huruf besar/kecil ditangani langsung oleh sistem file; ini menghasilkan waktu pencarian yang hampir sama dalam folder peka huruf besar-kecil dan tidak peka huruf besar-kecil, menghilangkan perlambatan folder besar dari SDCardFS. Pelacakan kuota yang dilakukan SDCardFS untuk mengumpulkan data penyimpanan dengan cepat untuk pengaturan kini dikonfigurasi dari ruang pengguna menggunakan kuota proyek. Dalam beberapa konteks yang sensitif terhadap kinerja, direktori diikat di tempatnya. Implementasi FUSE baru menyediakan penyimpanan terbatas untuk akses sistem file langsung, terutama untuk mendukung redaksi informasi lokasi.

Konfigurasikan fungsionalitas penggantian SDcard

Untuk mengaktifkan kuota proyek dan pelipatan kasus untuk penyimpanan emulasi tanpa SDCardFS pada perangkat yang diluncurkan dengan Android 11 atau lebih tinggi, warisi dari emulated_storage.mk di file device.mk :

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

Peringatan: Jangan lakukan ini pada perangkat yang diluncurkan dengan Android 10 atau lebih rendah, karena ketidakpekaan huruf besar-kecil pada sistem file tidak kompatibel dengan pengaturan enkripsi berbasis file yang digunakan pada perangkat tersebut. Penting untuk tetap menggunakan SDCardFS pada perangkat tersebut.

Alasan untuk tidak lagi menggunakan SDCardFS

Ada berbagai alasan untuk menghentikan SDCardFS.

Stabilitas

SDCardFS mengalami beberapa kondisi balapan terkait sensitivitas huruf besar-kecil, serta beberapa masalah terkait kondisi memori rendah. Pencarian case-insensitive bisa menjadi agak lambat di direktori besar karena pencarian harus berjalan di direktori bawah untuk menemukan case alternatif. Mengakses sistem file atas dan bawah secara bersamaan juga dapat menyebabkan masalah.

Paritas hulu

SDCardFS memerlukan patch tambahan pada VFS untuk mendukung perubahan opsi pada pengikatan pengikatan. Tambalan ini menyebabkan pekerjaan tambahan untuk menerima perubahan hulu pada area ini. Fitur SDCardFS dapat direplikasi oleh komponen upstream, menghilangkan masalah ini.

Kesetaraan fitur dengan API

Pada rilis Android sebelumnya, penyimpanan terbatas membatasi akses ke jenis metadata tertentu. Akses penyimpanan langsung melalui SDCardFS tidak mendukung fitur penyimpanan terbatas ini.