【问题标题】:Check when a file has finished downloading in Eclipse在 Eclipse 中检查文件何时完成下载
【发布时间】:2015-05-04 22:37:48
【问题描述】:

我正在制作一个应用程序,单击一个按钮,将下载选定的歌曲列表,我只需要在文件完成下载之前开始下载文件。有什么方法可以确认吗?

【问题讨论】:

  • 您应该使用事务和异步通信。以其他方式,我可以使用带有同步线程的简单队列
  • 你能给我举个例子吗?还是链接?会有帮助的。
  • 我觉得Pshemo写的不错,你也可以看看:stackoverflow.com/questions/8323955/…

标签: java android eclipse download


【解决方案1】:

我不是 Android 或多线程专家,所以可能有更好的方法来做到这一点,但据我记得你可以在这种情况下使用 Executors,比如

ExecutorService es = Executors.newFixedThreadPool(1);// allow only one task to run, 
                                                     // place rest of task in queue
es.execute(new Runnable() {
    @Override
    public void run() {
        //download file one
    }
});
es.execute(new Runnable() {
    @Override
    public void run() {
        //download file two
    }
});

只有在前一个任务中的代码完成时,才会执行第二个任务中的下载文件。

【讨论】:

  • 如果我绕过它,它会起作用吗?另外,我将打开一个可下载的链接。因此,任务只是通过浏览器或默认设置下载管理器打开链接。
  • @VirenChugh 我看不出这不起作用的原因,但正如我所说,我不是 Android 专家。您将需要尝试一下。或者,也许首先查看@MarcinErbel 在您的问题下的评论中提供的链接。这个答案似乎是合理的。
  • 试过了。我也明白这个概念。一次打开两个链接。这是因为我的函数不下载文件,而只是打开一个触发下载的链接。因此,一旦完成,它就会转到下一个文件。但这实际上在另一个项目中帮助了我,所以谢谢。 :)
猜你喜欢
  • 2019-09-15
  • 1970-01-01
  • 2020-03-18
  • 1970-01-01
  • 2015-09-28
  • 2011-04-28
  • 2014-03-24
  • 1970-01-01
  • 2023-03-26
相关资源
最近更新 更多