2012-10-16 17 views
7

Tôi phát triển một ứng dụng như Trình quản lý tải xuống từ Internet dành cho Android.Android: Tải xuống một tệp ở nhiều phần

Tôi muốn biết cách tải xuống các phần khác nhau của tệp trong Android như được thực hiện trong IDM.

Làm cách nào để nhận siêu dữ liệu của tệp trước khi tải xuống và cách tải xuống tệp ở các phần?

Không có tên người dùng-mật khẩu hoặc bất kỳ hạn chế nào trong việc tải xuống ... chỉ cần tải xuống đơn giản bằng url.

+0

Qua những loại giao thức? –

+0

http, https hoặc ftp –

Trả lời

6

Giả sử bạn đang sử dụng HTTP để tải xuống, bạn sẽ muốn sử dụng tiêu đề http HEAD http động và RANGE http.

HEAD sẽ cung cấp cho bạn các tệp (nếu có) và sau đó RANGE cho phép bạn tải xuống phạm vi byte.

Sau khi bạn đã kích thước, hãy chia nó thành các đoạn có kích thước bằng nhau và tạo chuỗi tải xuống cho từng đoạn. Sau khi tất cả được thực hiện, hãy viết các khối tệp theo đúng thứ tự.

EDIT:

Nếu bạn không biết làm thế nào để sử dụng RANGE tiêu đề, đây là một SO câu trả lời mà giải thích cách: https://stackoverflow.com/a/6323043/1355166

+0

có chức năng nào trong android để triển khai tính năng này không ?? –

+0

Có, tôi đã chỉnh sửa câu trả lời để bao gồm một liên kết đến câu trả lời khác. – gcochard

+2

"Phạm vi" là tiêu đề thực sự – irreputable