SDCardFS không được dùng trên các thiết bị chạy Android 11 trở lên và chạy phiên bản nhân 5.4 trở lên. Trên các thiết bị đó, thử nghiệm VTS không cho phép các hệ thống tệp được gắn dưới dạng SDCardFS. Những thiết bị chạy Android 11 trở lên nhưng chạy phiên bản kernel 4.19 trở xuống vẫn có thể tiếp tục sử dụng SDCardFS, nhưng Google không cung cấp thêm dịch vụ hỗ trợ.
Trước khi ngừng hoạt động, SDCardFS cung cấp một cách để kiểm soát quyền truy cập vào bộ nhớ trong mô phỏng và thẻ SD bên ngoài, cho phép các ứng dụng chỉ truy cập vào dữ liệu liên quan đến chúng. Ngoài ra, nó còn cung cấp một lớp không phân biệt chữ hoa chữ thường, cũng như một số tính năng theo dõi bộ nhớ bổ sung.
Chức năng thay thế SDCardFS
Giải pháp thay thế cho SDCardFS sử dụng một số tính năng của hệ thống tệp trong nhân Linux để đạt được kết quả tương tự. Hệ thống tệp xử lý trực tiếp tính năng không phân biệt chữ hoa chữ thường; điều này dẫn đến thời gian tra cứu gần như giống hệt nhau trong các thư mục phân biệt chữ hoa chữ thường và không phân biệt chữ hoa chữ thường, loại bỏ tình trạng chậm trễ đối với thư mục lớn trong SDCardFS. Tính năng theo dõi hạn mức mà SDCardFS đã thực hiện để nhanh chóng thu thập dữ liệu bộ nhớ cho phần cài đặt hiện được định cấu hình từ không gian người dùng bằng hạn mức dự án. Trong một số ngữ cảnh nhạy cảm về hiệu suất, các thư mục được liên kết gắn tại chỗ. Một chế độ triển khai FUSE mới cung cấp bộ nhớ có giới hạn để truy cập trực tiếp vào hệ thống tệp, chủ yếu là để hỗ trợ tính năng loại bỏ thông tin vị trí.
Định cấu hình chức năng thay thế thẻ SD
Để bật hạn mức dự án và tính năng phân biệt chữ hoa chữ thường cho bộ nhớ mô phỏng mà không có SDCardFS trên thiết bị chạy Android 11 trở lên, hãy kế thừa từ emulated_storage.mk
trong tệp device.mk
:
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
Cảnh báo: Không thực hiện việc này trên các thiết bị chạy Android 10 trở xuống, vì chế độ không phân biệt chữ hoa chữ thường gốc của hệ thống tệp không tương thích với các chế độ cài đặt mã hoá dựa trên tệp được dùng trên những thiết bị như vậy. Bạn cần tiếp tục sử dụng SDCardFS trên những thiết bị như vậy.
Lý do ngừng sử dụng SDCardFS
Có nhiều lý do khiến SDCardFS không còn được dùng nữa.
Độ ổn định
SDCardFS gặp phải một số điều kiện tương tranh liên quan đến độ phân biệt chữ hoa chữ thường, cũng như một số vấn đề liên quan đến trường hợp bộ nhớ thấp. Các hoạt động tra cứu không phân biệt chữ hoa chữ thường có thể diễn ra khá chậm trong các thư mục lớn vì các hoạt động tra cứu phải đi qua thư mục dưới để tìm các trường hợp thay thế. Việc truy cập vào các hệ thống tệp trên và dưới cùng lúc cũng có thể dẫn đến các vấn đề.
Tương đương về tính năng
SDCardFS yêu cầu các bản vá bổ sung cho VFS để hỗ trợ việc thay đổi các lựa chọn trên các điểm gắn kết liên kết. Những bản vá này khiến bạn phải thực hiện thêm công việc để chấp nhận các thay đổi ngược dòng đối với những khu vực này. Các thành phần nguồn trên có thể sao chép các tính năng của SDCardFS, giúp loại bỏ vấn đề này.
Tương đương về tính năng với API
Trong phiên bản Android trước, bộ nhớ có phạm vi giới hạn quyền truy cập vào một số loại siêu dữ liệu cụ thể. Quyền truy cập trực tiếp vào bộ nhớ thông qua SDCardFS không hỗ trợ các tính năng bộ nhớ có phạm vi này.