Chương trình chuyển bộ nhớ trong sang bộ nhớ ngoài. Cách tạo ổ đĩa flash làm bộ nhớ cho điện thoại Android. Làm cách nào để trao đổi bộ nhớ trên Android? Nên làm gì

Như đã hứa trong phần nhận xét cho bài đăng “Trình quản lý triển khai hoặc nơi nào khác bạn có thể triển khai tệp”, tôi đã tìm hiểu thêm một chút về hệ thống tệp (hay đúng hơn là vào Hệ thống phân cấp thư mục). Cơ sở của bài viết này là câu hỏi của Dmitry Kuzmenko, tôi thực sự hy vọng rằng mình có thể trả lời nó ở mức độ cần thiết. Hãy nói một chút về hệ điều hành Android, nhà sản xuất thiết bị chạy hệ điều hành này và tôi cũng sẽ chỉ ra một số tùy chọn để có được danh sách các thiết bị lưu trữ có sẵn.


Tiếp tục cho Android 4.4.* tại đây: Android 4.4 và ghi vào thẻ nhớ ngoài...

Cập nhật (17.02.14). Dựa trên các nhận xét, các thay đổi đã được thực hiện đối với các phụ lục.
Cập nhật 2 (17/02/14). Đã phát hiện dương tính giả của tùy chọn thứ 3, tính năng đã được sửa. Cải thiện tìm kiếm một chút.

Cập nhật (30.03.14). Phương pháp thứ ba hoạt động trên các phiên bản Android dưới 4.3. Tôi sẽ không viết mã cho các phiên bản cao hơn 4.3, bởi vì Tôi không có thiết bị chạy phiên bản Android này để phân tích cấu trúc mới.
Cập nhật (21.04.14). Đã kiểm tra mã trên Delphi XE6

Cập nhật 3 (15/07/14). Cập nhật mã nguồn, phát hiện thao tác không chính xác (lỗi AV) trên một số thiết bị

Tôi sẽ cố gắng trình bày ngắn gọn toàn bộ quan điểm để nó không dài tới 10 trang văn bản.

Hãy bắt đầu với những điều cơ bản.

Hệ điều hành Android dựa trên nhân Linux. Trong các hệ điều hành giống Unix, chỉ có một thư mục gốc và tất cả các tệp và thư mục khác được lồng trong đó. Trên hầu hết các hệ thống giống UNIX, các đĩa di động, ổ đĩa flash và các thiết bị lưu trữ bên ngoài khác được gắn vào thư mục /mnt, /mount hoặc /media (trong trường hợp của chúng tôi là thư mục /mnt). Các hệ điều hành giống UNIX cũng cho phép các đĩa được gắn tự động khi hệ điều hành khởi động.

Chúng tôi xác định danh sách các thiết bị lưu trữ có sẵn.

Tôi phải nói ngay rằng tôi không tìm thấy phương thức nào trong API Android cho phép tôi xác định danh sách như vậy. Do đó, điều đầu tiên bạn nghĩ đến là tự mình kiểm tra các đường dẫn có thể có và ở đây chữ “NHƯNG” đầu tiên xuất hiện. Mọi thứ sẽ đơn giản nếu không có các nhà sản xuất thiết bị chỉ muốn thay đổi điều gì đó trên Android và trong trường hợp này họ đã thử. Tôi đã thử nghiệm và phát hiện ra rằng số lượng tùy chọn đường dẫn có thể có là khá lớn và hầu như không thể tìm ra tất cả chúng, trừ khi bạn bắt đầu thu thập cơ sở dữ liệu chung về các tùy chọn đó từ tất cả chủ sở hữu thiết bị Android.

Những người tham gia thí nghiệm của tôi (người duy nhất của tôi là SGS2 :):

  • Samsung Galaxy S Plus – Android 2.3.6
  • Samsung Galaxy S2 – Android 4.1.2
  • HTC Sensation Z710e – Android 4.0.3
  • HTC One X – Android 4.2.2
  • HTC Rhyme – Android 4.0.3

Bây giờ chúng ta hãy xem những đường dẫn nào có trên các thiết bị này, điều quan trọng với chúng ta là đường dẫn vào thẻ nội bộ (nếu có), thẻ ngoài (nếu có) và thiết bị usb (nếu có).

Như bạn có thể thấy, các con đường ở mọi nơi đều khác nhau.

Lựa chọn 1.

Chúng tôi soạn một mảng các giá trị có thể có và trong một vòng lặp, chúng tôi kiểm tra tính khả dụng của từng giá trị bằng cách sử dụng cách kiểm tra thông thường để biết sự tồn tại của một thư mục ( TDirectory.Exists), cũng như thư mục trống ( TDirectory.IsEmpty).

Tôi đã biên soạn một danh sách chung cho các thiết bị này và viết một ứng dụng nhỏ để thử nghiệm.

Danh sách của tôi (dựa trên 5 thiết bị phổ biến):

  • /mnt/sdcard
  • /mnt/sdcard/external_sd
  • /mnt/extSdCard
  • /mnt/usb
  • /mnt/UsbDriveA
  • /mnt/UsbDriveB
  • /mnt/UsbDriveC
  • /mnt/UsbDriveD
  • /mnt/UsbDriveE
  • /mnt/UsbDriveF

Sau khi tìm kiếm các đường dẫn tương tự trên Internet, tôi tìm thấy thêm 3 điểm có thể xảy ra:

  • /mnt/external_sd
  • /mnt/usb_storage
  • /mnt/bên ngoài

Bổ sung từDmitry Kuzmenko:

Sony Xperia V - 4.1.2

  • /mnt/sdcard
  • /mnt/ext_card
  • /mnt/usbdisk

Nhiều thêm một chút:
Sony Xperia Go - 4.1.2

  • /mnt/sdcard
  • /mnt/ext_card
  • /mnt/usbdisk
Samsung Galaxy S4 - 4.2.2
  • /mnt/sdcard
  • /mnt/extSdCard
  • /mnt/UsbDriveA
  • /mnt/UsbDriveB
  • /mnt/UsbDriveC
  • /mnt/UsbDriveD
  • /mnt/UsbDriveE
  • /mnt/UsbDriveF
Bạn sẽ tìm thấy mảng đã hoàn thành trong đoạn mã bên dưới. Bạn có thể để lại thông tin nhận xét về đường dẫn trên thiết bị của mình theo mẫu sau:

Tên thiết bị – Phiên bản Android

Đường dẫn trực tiếp tới bộ nhớ trong

Đường dẫn trực tiếp tới thẻ nhớ ngoài

Đường dẫn trực tiếp đến thiết bị USB

Tất cả các đường dẫn đều bắt đầu từ thư mục /mnt/.


Hoặc sao chép và gửi cho tôi tệp "/etc/vold.fstab" tới infocean @ gmail.com hoặc trong phần bình luận (đừng quên cho biết kiểu máy và phiên bản Android). Vui lòng cho biết tất cả các thư mục có trong /mnt thư mục /, nó rất quan trọng.

Ứng dụng:

Sử dụngSystem.IOUtils; const pathmnt: Mảng chuỗi = ("/mnt/sdcard", "/mnt/sdcard/external_sd", "/mnt/extSdCard", "/mnt/usb", "/mnt/UsbDriveA", "/mnt/UsbDriveB ", "/mnt/UsbDriveC", "/mnt/UsbDriveD", "/mnt/UsbDriveE", "/mnt/UsbDriveF", "/mnt/external_sd", "/mnt/usb_storage", "/mnt/external" , "/mnt/ext_card", "/mnt/usbdisk"); thủ tục TForm1.Button1Click(Người gửi: TObject); var i: số nguyên; bắt đầu Memo1.Lines.Clear; Memo2.Lines.Clear; đối với i:= 0 đến Chiều dài(pathmnt) - 1 bắt đầu nếu TDirectory.Exists(pathmnt[i]) VÀ không phải TDirectory.IsEmpty(pathmnt[i]) thì bắt đầu Memo1.Lines.Add(pathmnt[i]); Memo2.Lines.Add("Đúng"); kết thúc khác bắt đầu Memo1.Lines.Add(pathmnt[i]); Memo2.Lines.Add("Sai"); kết thúc; kết thúc; kết thúc;

Lựa chọn 2.

Tùy chọn đầu tiên có cả ưu và nhược điểm (điều chính là danh sách các đường dẫn có thể không đầy đủ), vì vậy hãy thử giải quyết vấn đề này theo một cách khác.

Có một tập tin như vậy " vold.fstab", nằm ở đây "/etc/"("/system/etc/"). Đây là một trong những tệp cấu hình trong các hệ thống giống UNIX chứa thông tin về các hệ thống tệp và thiết bị lưu trữ khác nhau. Mô tả cách đĩa (phân vùng) sẽ được sử dụng hoặc tích hợp vào hệ thống.

Và có một tập tin " gắn kết", nằm ở đây "/proc/". Chứa thông tin về tất cả các điểm gắn kết được sử dụng trong thiết bị. Điều quan trọng là phải hiểu rằng nếu thẻ nhớ không được đề cập trong tệp này thì có nghĩa là nó chưa được kết nối. Điều này có nghĩa là tập tin được cập nhật liên tục.

Từng bước một:

  1. Đọc tập tin " vold.fstab»
  2. Chúng tôi kiểm tra khả năng truy cập của từng thiết bị bằng cách đọc tệp “ gắn kết» và tìm kiếm dòng được yêu cầu trong đó.

Sẽ không có mã nào trong phiên bản này, bởi vì... Vì lý do nào đó mà tôi không biết, tôi không thể đọc được tệp "mount". Về vấn đề này, tôi đề xuất phương án thứ ba.


Tùy chọn số 3.

Chúng tôi kết hợp các tùy chọn thứ nhất và thứ hai. Chúng tôi sẽ lấy danh sách từ tập tin " vold.fstab", và tự kiểm tra mà không cần mở tệp " gắn kết" Tại sao phải bận tâm với hai tập tin mỗi khi bạn chỉ có thể làm việc với một tập tin.

Từng bước một:

  1. Đọc tập tin " vold.fstab»
  2. Lập danh sách các thiết bị lưu trữ (đã hoàn thành một nửa công việc)
  3. Bây giờ chúng ta duyệt qua danh sách theo vòng lặp và kiểm tra từng đường dẫn bằng cách sử dụng “ TDirectory.Exists" Và " TDirectory.IsEmpty»
  4. Chúng tôi đang tổng hợp danh sách các thiết bị lưu trữ thực sự có sẵn

Cập nhật-17.02.14: Nhờ có Dmitry Kuzmenko và những nỗ lực chung, chúng tôi phát hiện ra rằng tệp “/etc/vold.fstab” trong Sony Xperia V hơi khác so với các tệp khác, do đó, các thay đổi đã được thực hiện đối với mã nguồn của ứng dụng. Mọi thứ đã được kiểm tra, nó hoạt động! :) Các nguồn đã được cập nhật ở khắp mọi nơi.

Cập nhật2-17.02.14: Trong tệp "/etc/vold.fstab" đôi khi (trên một số thiết bị) có các dòng nhận xét rất giống với các dòng được tìm thấy trong mã của tôi và do đó đã xảy ra kết quả dương tính giả. Tôi đã sửa tính năng này trong phiên bản mã mới.
Tôi cũng đã sửa lỗi tìm kiếm các dòng được yêu cầu, giờ đây nó phổ biến hơn!

Nói chung, mã bây giờ sẽ hoạt động tốt trên các thiết bị khác nhau. Hãy dùng thử, viết bình luận, đính kèm tệp của bạn “/etc/vold.fstab” (đừng quên cho biết kiểu thiết bị và phiên bản Android của bạn).

Cập nhật 3 - 15/07/14:
Người đọc blog Sergey Yakimenko phát hiện ra rằng tùy chọn thứ ba (đọc tệp) không hoạt động chính xác trên thiết bị Huawei Ascend P6Reellex TAB-07, như đã báo cáo trong các ý kiến.

Sau khi trao đổi thư từ cá nhân và một số phân tích, tôi phát hiện ra những vấn đề đang cản trở công việc.

Các vấn đề được tìm thấy và khắc phục:

  1. Dấu cách ở đầu mỗi dòng được tìm thấy. Đã sửa lỗi bằng "Cắt"
  2. Các dòng tìm thấy sử dụng tab thay vì dấu cách. Đã sửa lỗi bằng cách thay thế các ký tự tab bằng dấu cách.
Mã đã được cập nhật. Cảm ơn Sergei rất nhiều.

Ứng dụng:

Sử dụng System.StrUtils, System.IOUtils; thủ tục TForm1.Button1Click(Người gửi: TObject); là OpenFileVold: TStringList; i: Số nguyên; đường dẫn: TStringDynArray; bắt đầu OpenFileVold:= TStringList.Create; thử // Đọc tệp OpenFileVold.LoadFromFile("/etc/vold.fstab"); đối với i:= 0 đến OpenFileVold.Count - 1 bắt đầu nếu (Pos("dev_mount", OpenFileVold.Strings[i]) > 0) HOẶC (Pos("fuse_mount", OpenFileVold.Strings[i]) > 0) sau đó bắt đầu // Update(07/15/14) // 1 - Xóa khoảng trắng ở đầu và cuối dòng (loại bỏ AV) // 2 - Thay thế các ký tự tab bằng dấu cách pathtemp:= SplitString(StringReplace(Trim(OpenFileVold .Strings[i] ), #9, " ", ), " "); // Kiểm tra ký tự đầu tiên của dòng xem nó có khớp với ký tự "#" hay "##", // để không có sai sót nào if (pathtemp<>"#") VÀ (pathtemp<>"##") thì bắt đầu nếu TDirectory.Exists(pathtemp) VÀ không phải TDirectory.IsEmpty(pathtemp) thì bắt đầu Memo1.Lines.Add(pathtemp); kết thúc; kết thúc; kết thúc; kết thúc; cuối cùng là OpenFileVold.Free; // FreeAndNil(SourceFile); kết thúc; kết thúc;

Kết quả: Chúng tôi đã học cách lấy danh sách các thiết bị lưu trữ có sẵn (tôi sẽ sử dụng tùy chọn thứ ba). Văn bản (không có mã và hình ảnh) dài 3 trang, chắc chúng tôi không thấy chán :)

Cảm ơn tất cả các bạn đã quan tâm và phát triển thành công.

P.s. Bổ sung được chào đón.
p.s.2. Tôi đã dành rất nhiều thời gian để thử nghiệm và so sánh vold.fstab, gắn kết các tập tin từ các thiết bị khác nhau...
p.s.3. Trong bài viết tiếp theo, tôi sẽ chỉ cho bạn cách loại bỏ vấn đề cập nhật cơ sở dữ liệu khi cập nhật ứng dụng theo cách thủ công.

Theo mặc định, tất cả các ứng dụng đều được cài đặt trên bộ nhớ trong của thiết bị Android. Nó cũng được sử dụng để lưu trữ bộ đệm của họ. Nhưng ngay cả bộ nhớ của điện thoại thông minh hiện đại đôi khi cũng không đủ để tải xuống tất cả các phần mềm cần thiết. Thật tốt khi có thẻ nhớ có đủ dung lượng cho việc này. Chúng ta sẽ xem xét kỹ hơn cách sử dụng chúng để giảm tải bộ nhớ chính.

Cách chuyển bộ nhớ điện thoại Android sang thẻ nhớ

Hãy để chúng tôi làm rõ rằng trong trường hợp này, chúng tôi đang xem xét một tình huống mà người dùng cần đảm bảo rằng các tệp và chương trình đã tải xuống được lưu trên thẻ nhớ microSD. Theo mặc định, cài đặt Android được đặt tự động tải xuống bộ nhớ trong. Vì vậy chúng tôi sẽ cố gắng thay đổi điều này.

Trước tiên, hãy xem xét các tùy chọn để chuyển các chương trình đã cài đặt, sau đó - các cách thay đổi bộ nhớ trong thành bộ nhớ ổ đĩa flash.

Trên một ghi chú: Bản thân ổ đĩa flash không chỉ phải có dung lượng bộ nhớ lớn mà còn phải có đủ tốc độ, bởi vì chất lượng của các trò chơi và ứng dụng nằm trên nó sẽ phụ thuộc vào điều này..

Cách 1: Link2SD

Đây là một trong những lựa chọn tốt nhất trong số các chương trình tương tự. Link2SD cho phép bạn thực hiện những việc tương tự như bạn có thể thực hiện thủ công nhưng nhanh hơn một chút. Ngoài ra, bạn có thể di chuyển mạnh mẽ các trò chơi và ứng dụng không được di chuyển theo cách tiêu chuẩn.

Bạn có thể tải xuống Link2SD

Hướng dẫn làm việc với Link2SD như sau:

  1. Cửa sổ chính sẽ hiển thị danh sách tất cả các ứng dụng. Chọn một trong những bạn cần.
  2. Cuộn xuống thông tin ứng dụng và nhấn " Chuyển sang thẻ SD».

Xin lưu ý rằng những ứng dụng không được chuyển theo cách tiêu chuẩn có thể làm giảm chức năng của chúng. Ví dụ: các vật dụng sẽ ngừng hoạt động.

Cách 2: Thiết lập bộ nhớ

Hãy quay lại với các công cụ hệ thống một lần nữa. Trên Android, bạn có thể chỉ định thẻ SD làm vị trí cài đặt mặc định cho các ứng dụng. Một lần nữa, điều này không phải lúc nào cũng hiệu quả.

Trong mọi trường hợp, hãy thử làm như sau:

1. Trong cài đặt, hãy mở “ Ký ức».

2. Nhấp vào " Vị trí lắp đặt ưa thích" và chọn " thẻ SD».

3. Bạn cũng có thể chỉ định bộ nhớ để lưu các tệp khác bằng cách chỉ định thẻ SD là " Bộ nhớ mặc định».

Vị trí của các phần tử trên thiết bị của bạn có thể khác với các ví dụ được đưa ra.

Cách 3: Thay bộ nhớ trong bằng bộ nhớ ngoài

Và phương pháp này cho phép bạn đánh lừa Android để nó coi thẻ nhớ là bộ nhớ hệ thống. Từ bộ công cụ, bạn sẽ cần bất kỳ trình quản lý tệp nào. Ví dụ sẽ sử dụng Trình khám phá gốc.

Chú ý! Bạn thực hiện quy trình được mô tả bên dưới và tự chịu rủi ro. Luôn có khả năng điều này sẽ gây ra sự cố với Android, điều này chỉ có thể khắc phục bằng cách flash nó.

Thủ tục như sau:

1. Trong thư mục gốc của hệ thống, hãy mở thư mục “vân vân" Để thực hiện việc này, hãy mở trình quản lý tệp của bạn.

2. Tìm tập tin " vold.fstab" và mở nó bằng trình soạn thảo văn bản.

3. Thứ Tư và toàn bộ văn bản, tìm 2 dòng bắt đầu bằng “ dev_mount"không có lưới ngay từ đầu. Chúng phải được theo sau bởi các giá trị sau:

  • « thẻ sdcard /mnt/sdcard»;
  • « extsd /mnt/extsd».

4. Bạn cần hoán đổi các từ sau “ mnt/", để nó trở thành như thế này:

  • « sdcard/mnt/extsd»;
  • « extsd/mnt/sdcard».

5. Các thiết bị khác nhau có thể có các ký hiệu khác nhau sau “ mnt/»: « thẻ SD», « sdcard0», « sdcard1», « sdcard2" Điều chính là trao đổi chúng.

6. Lưu các thay đổi và khởi động lại điện thoại thông minh của bạn.

Đối với trình quản lý tệp, điều đáng nói là không phải tất cả các chương trình như vậy đều cho phép bạn xem các tệp nói trên. Chúng tôi khuyên bạn nên sử dụng ES Explorer.

Cách 4: Chuyển ứng dụng theo cách chuẩn

Bắt đầu từ Android 4.0, bạn có thể chuyển một số ứng dụng từ bộ nhớ trong sang thẻ SD mà không cần sử dụng công cụ của bên thứ ba.

Để làm điều này, bạn sẽ cần phải làm như sau:

1. Mở " Cài đặt».

2. Vào phần "Các ứng dụng».

3. Nhấn (chạm bằng ngón tay) vào chương trình mong muốn.

4. Nhấp vào nút Chuyển tới thẻ nhớ».


Nhược điểm của phương pháp này là nó không hoạt động với tất cả các ứng dụng.

Bằng những cách này, bạn có thể sử dụng bộ nhớ thẻ SD cho trò chơi và ứng dụng.



Vấn đề thiếu bộ nhớ là một trong những vấn đề cơ bản đối với cả PC và thiết bị di động. Với một lượng nhỏ bộ nhớ trống, hệ thống thường bắt đầu chạy chậm lại, đóng băng, không ổn định và không đáng tin cậy. Điều này đặc biệt đúng đối với các thiết bị Android, nhiều thiết bị ban đầu có dung lượng bộ nhớ chính khá nhỏ (được gọi là “Bộ nhớ trong”). Trong tình huống như vậy, một số người dùng có thể nảy ra ý tưởng thử sử dụng thẻ SD bên ngoài làm bộ nhớ chính trên thiết bị Android của họ. Trong tài liệu này, tôi sẽ cho bạn biết cách đặt thẻ SD làm bộ nhớ chính trên các thiết bị Android và phương pháp nào sẽ giúp chúng tôi thực hiện việc này.

Hãy xem cách đặt thẻ SD làm bộ nhớ chính trên Android

Để hoàn thành nhiệm vụ này, bạn sẽ cần thẻ SD tốc độ cao (tốt nhất là loại 10 trở lên). Thẻ 6, đặc biệt là loại 4 và 2 không phù hợp cho những mục đích như vậy, hệ thống của bạn do sử dụng chúng sẽ làm chậm hoạt động đáng kể, điều này khó có thể làm hài lòng bất kỳ người dùng nào.

Điều quan trọng là phải hiểu rằng tuổi thọ của thẻ SD như vậy do tải hoạt động trên thẻ sẽ ít hơn đáng kể so với khi tải trên thẻ ở chế độ tiêu chuẩn.


Phương pháp số 1. Thay đổi nội dung của tệp Vold.fstab

Phương pháp đầu tiên được mô tả liên quan đến việc thay đổi nội dung của tệp cài đặt hệ thống “Vold.fstab”. Sau khi thực hiện những thay đổi này, hệ điều hành Android sẽ coi thẻ SD của bạn là bộ nhớ trong của thiết bị, nhưng hãy nhớ rằng một số ứng dụng đã cài đặt trước đó có thể ngừng hoạt động.

Điều quan trọng cần biết là phương pháp này chỉ hoạt động trên bắt nguồn từ thiết bị chạy hệ điều hành Android dưới (!) hơn phiên bản 4.4.2. Trong phiên bản hệ điều hành Android 4.4.2 trở lên, rất có thể bạn sẽ không tìm thấy tệp được chỉ định.

Ngoài ra, hãy nhớ rằng lỗi khi triển khai phương pháp này (đặc biệt là thêm ký tự bổ sung vào các dòng bắt buộc) có thể gây ảnh hưởng bi thảm đến hiệu suất của thiết bị của bạn. Do đó, hãy cân nhắc cẩn thận những rủi ro có thể xảy ra và nếu cuối cùng bạn đã đưa ra quyết định thì hãy tiến hành thực hiện nó.

Vì vậy, để thực hiện phương pháp này, hãy làm như sau:

Ví dụ: đây có thể là những dòng như thế này:

  • dev_mount sdcard/storage/sdcard0 emmc@xxxxxx
  • dev_mount sdcard2/storage/sdcard1 auto/xxxxxx

Để thực hiện những thay đổi cần thiết, chúng ta cần hoán đổi đường dẫn trong các dòng được chỉ định, nghĩa là chỉ cần đặt, thay vì 0, đặt số 1 ở dòng đầu tiên và ở dòng thứ hai, thay vì 1, đặt số 0.

Sau khi thay đổi, những dòng này sẽ trông như sau:

  • dev_mount sdcard/storage/sdcard1 emmc@xxxxxx
  • dev_mount sdcard2/storage/sdcard0 auto/xxxxx

Lưu những thay đổi bạn đã thực hiện và sau đó khởi động lại tiện ích.

Một tùy chọn khác về cách đặt thẻ nhớ làm thẻ nhớ chính trên Android:


Phương pháp số 2. Chúng tôi sử dụng cài đặt của hệ điều hành Android 6.0 trở lên

Ngoài phương pháp đầu tiên, trong đó tôi đã xem cách chuyển bộ nhớ điện thoại sang thẻ nhớ, còn có một phương pháp khác chỉ hoạt động trên cài đặt của HĐH Android 6.0 (Marshmallow) trở lên và cho phép bạn sử dụng SD thẻ làm thẻ chính để lưu tệp và làm việc với chúng. Để triển khai nó, tôi khuyên bạn nên tạo một bản sao dữ liệu từ thẻ SD của bạn (nếu có trên đó), vì thẻ này sẽ được hệ thống định dạng.

Khả năng của thiết bị có thể được mở rộng đáng kể nếu bạn thay thế bộ nhớ trong của Android bằng thẻ nhớ. Điều này sẽ cho phép bạn cài đặt thêm nhiều ứng dụng trên máy tính bảng hoặc thiết bị khác của mình, nhưng yêu cầu chính để thực hiện cập nhật này là phải có quyền root trên thiết bị. Hãy xem các cách sử dụng thẻ SD làm bộ nhớ hệ thống của thiết bị, cũng như các điều kiện liên quan đến điều này.

Rủi ro và điều kiện thay thế bộ nhớ trong của thiết bị bằng thẻ SD

Trước khi lặp lại các bước bên dưới, người dùng nên cân nhắc một số điểm quan trọng:

  1. Tuổi thọ của thẻ SD sẽ giảm đi đáng kể do chu kỳ đọc/ghi thường xuyên khi chạy ứng dụng.
  2. Tốc độ của tiện ích có thể giảm đáng kể nếu bạn sử dụng thẻ MicroSD cấp thấp.
  3. Nếu bạn mắc lỗi khi chỉnh sửa tệp hệ thống, lần sau điện thoại có thể không khởi động được - bạn sẽ phải khởi động lại nó.

Nhìn chung, quy trình này (đặc biệt đối với người dùng thiếu kinh nghiệm) khá rủi ro, vì vậy sẽ hợp lý nếu chỉ thực hiện quy trình này dành riêng cho các thiết bị cũ có dung lượng bộ nhớ nhỏ.

Sử dụng tiện ích Root Browser và chỉnh sửa file vold.fstab

Để trao đổi bộ nhớ, bạn cần cài đặt Root Browser từ Google Play.

Hãy để chúng tôi nhắc lại rằng bạn chỉ có thể làm việc hoàn toàn với nó trên các thiết bị đã root. Sau khi chạy ứng dụng trên:


Trong Android, sdcard là viết tắt của bộ nhớ trong và extsd là viết tắt của bộ nhớ ngoài, tức là thẻ SD. Bằng cách thay thế những dòng này, chúng tôi thực sự đã hoán đổi các loại bộ nhớ này. Trên một số hệ thống, các đoạn mã này có thể trông khác nhau, ví dụ như thế này:

Chúng cần được thay thế như sau:

Sau khi hoàn thành quy trình được mô tả, hãy khởi động lại tiện ích. Trước khi thực hiện việc này, hãy nhớ kiểm tra xem không có lỗi nào trong mã đã sửa đổi để không cần phải flash lại trong tương lai.

Cách thứ hai để tăng bộ nhớ bằng Link2SD

Ứng dụng có sẵn trên Play Market và chỉ hoạt động trên các thiết bị có quyền root. Trình quản lý tệp này không thay thế vật lý bộ nhớ trong của thiết bị bằng ổ đĩa ngoài nhưng nó có khả năng chuyển bất kỳ tiện ích nào sang thẻ SD, tiết kiệm đáng kể tài nguyên của tiện ích.

Điểm đặc biệt của ứng dụng được đề cập là bản thân MicroSD sẽ phải được phân chia và định dạng chính xác. Do đó, hãy sao chép mọi thứ có giá trị từ thẻ vào máy tính của bạn và bắt đầu chia ổ đĩa thành nhiều phần.

Chia thẻ máy thành các phần nếu có Recovery tùy chỉnh

Mọi thiết bị Android đều có chế độ khôi phục nhưng phương pháp được mô tả bên dưới chỉ phù hợp với các thiết bị có . Nếu bạn chưa bao giờ nghe nói đến CWM, hãy chuyển sang tùy chọn phân vùng ổ đĩa thứ hai. Tiếp theo, chúng tôi sẽ cho bạn biết cách giải quyết vấn đề nếu chế độ khôi phục thiết bị của bạn có mục Thẻ SD phân vùng:

Phân vùng thẻ MicroSD qua máy tính

Kết nối thẻ với máy tính xách tay hoặc PC của bạn. Để làm điều này, bạn có thể sử dụng đầu đọc thẻ hoặc thiết bị khác, điều chính là nó phải được xác định là một ổ đĩa chứ không phải một thiết bị đa phương tiện MTP. Hơn nữa: