我开发了一个类似Internet Download Manager for Android的应用程序。
我想知道如何在Android中下载文件的不同部分,就像在IDM中一样。
如何在下载之前获取文件的元数据以及如何下载部分文件?
下载时没有用户名密码或任何限制...只需通过网址进行简单下载。
答案 0 :(得分:6)
假设您正在使用HTTP进行下载,您将需要使用HEAD
http动词和RANGE
http标头。
HEAD
将为您提供文件大小(如果可用),然后RANGE
允许您下载字节范围。
获得文件大小后,将其分成大致相等大小的块,并为每个块生成下载线程。完成所有操作后,按正确的顺序编写文件块。
编辑:
如果您不知道如何使用RANGE
标题,请参阅另一个SO答案,说明如何:https://stackoverflow.com/a/6323043/1355166