【问题标题】:Android Download Progress安卓下载进度
【发布时间】:2011-01-07 05:29:27
【问题描述】:

我想知道一些下载的进度。
当我从互联网上获取一些资源时, 像这样:

        String myFeed = request.getURI().toString();
        URL url = new URL(myFeed);
        URLConnection connection = url.openConnection();
        HttpURLConnection httpConnection = (HttpURLConnection) connection;
        int responseCode = httpConnection.getResponseCode();
        if (responseCode == HttpURLConnection.HTTP_OK) {

            InputStream in = httpConnection.getInputStream();
            // Process the input stream
        }

当“InputStream in = httpConnection.getInputStream();”被称为,
文件的所有内容都会立即下载。

如果我使用:

        htttpResponse = httpClient.execute(httpRequestBase);

问题是一样的。

如何检测下载的实际进度?

谢谢大家!

【问题讨论】:

    标签: android progress


    【解决方案1】:

    我认为这是answered here

    简而言之:使用应该在标题字段中的“Content-Length”。

    编辑:对不起,我没有准确回答这个问题。基本上,一旦您知道预期的总内容长度,您就可以跟踪收到的数据量并计算完成百分比。

    另见:How to create a download manager

    【讨论】:

    • 我已经通过 getContentLength() 知道了文件大小。我不知道如何获得已经收到的内容的进度。我说的只是一个文件。
    • 哦,我明白了。好的,请参阅“如何创建下载管理器”链接。这有帮助吗?
    • 对不起!我一开始没有看到那个链接。
    • 一开始并不存在。我在您的第一条评论后添加了它;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-08
    • 2012-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-08
    相关资源
    最近更新 更多