Filedownloader: 下载经常要下载完成只剩一点时,只有progress回调,无完成下载和错误回调

Created on 19 Sep 2016  ·  8Comments  ·  Source: lingochamp/FileDownloader

image
不知道为什么下载很大几率出现这种情况,回调的progress到最后一点要完成时就没有反应了,后面任何回调都不出来。偶尔同一个文件多尝试几次又能完成下载。
这是什么情况引起的呢? @Jacksgong

question

Most helpful comment

好,解决了我一定上来分享

All 8 comments

恩。那个Error级别的日志应该是你在回调中打的吧。那个回调与引擎输出的日志是异步的,也就是内部输出block completed日志后,不一定立马就会到blockComplete回调,这里只是进入消息进队列等待队列中先进队列的消息回调完了就会到这个消息,因此你这块日志我看起来是没有问题的。

看你这里的日志内部消息流已经走到了 completed 了(new[-3]),并且也给上层消息流入队了blockComplete了,因此后面等随着上层消息不断出队,是会执行回调blockComplete的,你需要再往下截图点看看,因为根据最新版本的代码逻辑,回调了blockComplete后会立马开始入队complete或者error的。


建议处理方式:

  1. 建议clone下来项目中的 demo project跑跑看,我在demo project中做了非常多的压力测试,都没有遇到过类似的情况过,你对比下看看是哪里的问题。
  2. 使用目前最新的版本。
  3. 贴下更详尽的日志,我再给你看看,因为你贴出来的日志,是完全符合预期没有问题的。

目前我只在三星Galaxy S7 edge(SM-G9350)上发现这个问题,其他手机都没发现这个问题。

下载进度到最后一点日志就不打了,我去看了下载文件夹,文件实际是已经下载好了的,但是就是不走complete的回调。 @Jacksgong

这么奇怪,你看看那个手机跑项目中的demo project有没有这个问题。

demo没有问题

demo没有问题,你看看是否是使用上有什么差异,你将demo中的场景,通过不断的调整逐渐转换成你的场景,看看在哪个环节以后出现问题的。

好,解决了我一定上来分享

恩。好的。

Was this page helpful?
0 / 5 - 0 ratings