2013-08-22 47 views
25

Tôi cố gắng để phát triển một "người quản lý tài liệu"Android: các tệp tải xuống được lưu ở đâu?

Tôi có cần thiết phải truy cập vào các tập tin tải về từ internet, từ Gmail, cho các khách hàng mail khác, từ các nguồn internet khác ...

tôi sẽ muốn hiểu nơi những tập tin này được lưu trữ một cách chính xác trên Android:

1- nếu có một SD

2- nếu không có thẻ nhớ SD

để tôi có thể hiển thị chúng cho người dùng trong Ứng dụng của tôi bất kỳ lúc nào.

Bất kỳ trợ giúp nào được đánh giá cao.

+0

Vui lòng xem lại cấu trúc hệ thống tập tin android tại http://www.stevesandroidguide.com/android-files/ – jmozko

Trả lời

31

Hầu hết các thiết bị đều có một số hình thức lưu trữ được mô phỏng. nếu họ hỗ trợ thẻ sd, chúng thường được gắn vào /sdcard (hoặc một số biến thể của tên đó) thường được liên kết với một thư mục trong /storage như /storage/sdcard0 hoặc /storage/0 đôi khi bộ nhớ được mô phỏng được gắn vào /sdcard và đường dẫn thực tế giống như/lưu trữ/emulated/legacy. Bạn sẽ có thể sử dụng để lấy thư mục tải xuống. Bạn nên sử dụng các cuộc gọi api để nhận thư mục. Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);

Vì hệ thống tệp và hỗ trợ sdcard khác nhau giữa các thiết bị.

xem câu hỏi tương tự để biết thêm how to access downloads folder in android?

Thông thường các DownloadManager xử lý tải và các tập tin này sau đó được truy cập bằng cách yêu cầu uri của tập tin fromthe quản lý download sử dụng một file id để có được nơi tập tin là nơi mà thường sẽ là nơi nào đó trong các sdcard/thực hoặc mô phỏng từ các ứng dụng chỉ có thể đọc dữ liệu từ những nơi nhất định trên hệ thống tập tin bên ngoài của thư mục dữ liệu của họ như sdcard

16

Theo kinh nghiệm của tôi tất cả các file mà tôi đã tải về từ internet,gmail được lưu trữ trong

/sdcard/download 

trên ics

/sdcard/Download 

Bạn có thể truy cập nó bằng cách sử

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); 
Các vấn đề liên quan