okdownload
okdownload copied to clipboard
反馈一个下载中断掉wiff后会出现不同处理情况的现象
OkDownload Version
v1.0.5
Problem Describe
我使用DownloadSerialQueue进行队列的下载任务 主要代码为: class DownloadListener extends DownloadListener1 DownloadListener downloadListener = new DownloadListener(); DownloadSerialQueue serialQueue = new DownloadSerialQueue(downloadListener); serialQueue.enqueue(task1); serialQueue.enqueue(task2); serialQueue.enqueue(task3); 任务开始后,任务task1开始下载,其他两个任务等待下载,此时关闭wiff,会出现两种不同的情况。 情况一:会回调DownloadListener1的taskEnd函数,其中EndCause为ERROR,日志报java.net.UnknownHostException: network is not available! 这种情况我认为应该是正确的,也是我希望的结果 情况二:关闭wiff时,不会回调DownloadListener1的taskEnd函数,任务没有任何反应了,日志同样报java.net.UnknownHostException: network is not available!,感觉这种情况应该是bug
上述两种情况出现的频率大概为5:1,同样的操作,不同的结果,没有总结出来怎样能出现情况一,怎样能出现情况二,现将这种现象反馈给作者,希望有用。 最后,感谢作者的下载引擎,真的很好用,多谢。
Log
java.net.UnknownHostException: network is not available!
另外,出现这两种情况后,重新启动下载任务,偶尔会直接调用DownloadListener1的taskEnd函数,其中EndCause为SAME_TASK_BUSY 重新启动下载任务,我是通过如下代码构建的任务,然后执行的 DownloadTask task = new DownloadTask.Builder("原任务下载地址", 原任务保存File) .setFilename("原任务保存的名字") .setPassIfAlreadyCompleted(true) .build(); 其他代码与主问题中的代码一致 出现这种错误的时候,目前通过清理后台任务,杀掉进程,下次再重新启动下载任务即可继续下载,我想问一下,我是否有应该调用的函数未调用导致了该现象的出现
我的问题和这个差不多。 我的应用是开机以后自动启动,刚开机的时候是数据流量,过一会wifi才会连上,连上wifi以后下载东西就会提示 java.net.UnknownHostException: network is not available! 。解决方法也和上面的一样,通过清理后台任务,下次重新下载的时候就正常了。
使用自定义Strategy绕过网络检查 class MyDownloadStrategy : DownloadStrategy(){ override fun inspectNetworkAvailable() { try { super.inspectNetworkAvailable() }catch (e:Exception){ e.printStackTrace() } } }