如何提高在Android后台下载文件的速度?

时间:2013-04-26 13:51:38

标签: android inputstream

我正在开发一款应用(适用于Android和iPhone)。实际上,在我的应用程序中,我必须在后台下载大量视频(使用后台服务,IntentService)以及我有一个显示下载进度的屏幕(使用具有用于显示下载进度的UI的活动)。但我不知道为什么下载速度与iPhone中同一个应用程序的下载速度相比要低得多。

此外,每次下载视频后,我都会将该视频标记为已下载到数据库中。所有视频都会发生这种情况。

数据库是否因为在android中缓慢下载文件而出现问题? 由于相同的功能不会影响iPhone中文件的下载速度。

2 个答案:

答案 0 :(得分:1)

增加输入流的字节大小

更新:
看看here

答案 1 :(得分:1)

您可以尝试实现某种下载加速器,该加速器通过将其分段并使用多个同时连接从服务器下载这些段来下载单个文件。首先,您应检查服务器是否接受byte-ranges,然后指定字节范围以多线程方式下载。最后,您只需将段合并回一个完整的文件。

查看这些文档以获取更多信息:

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.5

第128页: http://www.ietf.org/rfc/rfc2068.txt

同时查找Java API URLConnection.setRequestProperty

但是,我认为下载速度慢主要是因为您的网络带宽和服务器的上传速度。