lingochamp / FileDownloader

Multitask、MultiThread(MultiConnection)、Breakpoint-resume、High-concurrency、Simple to use、Single/NotSingle-process
Apache License 2.0
11.02k stars 2.2k forks source link

下载完成且成功的文件,过几天后文件被加上.temp后缀 #1342

Open CleverSJX opened 4 years ago

CleverSJX commented 4 years ago

下载完成且成功的文件,过几天后文件被加上.temp后缀

5月11号下载的视频文件,到5月24号之间都有使用,没有问题,5月25号的时候文件莫名其妙被加上了.temp后缀, 查看文件该文件的大小还是正确,只是不知道为什么被加上了.temp后缀,在多台设备上出现了这个问题

CleverSJX commented 4 years ago

还有是在25号被加上后缀之前,我这边调用了一次下载,下载的是别的文件和这个被加了后缀的文件无关,然后这个视频文件就被重命名了 调用方式:

 FileDownloader.getImpl().pause(downloadListener);
final FileDownloadQueueSet queueSet = new FileDownloadQueueSet(downloadListener);

        final List<BaseDownloadTask> tasks = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
            tasks.add(FileDownloader.getImpl()
                    .create(list.get(i).getUrl())
                    .setPath(list.get(i).getPath())
                    .setTag(list.get(i).getTag())
            );
        }
        // 由于是队列任务, 这里是我们假设了现在不需要每个任务都回调`FileDownloadListener#progress`, 我们只关系每个任务是否完成
        //queueSet.disableCallbackProgressTimes();
        queueSet.setCallbackProgressMinInterval(1000);
        // 所有任务在下载失败的时候都自动重试3次
        queueSet.setAutoRetryTimes(RETRY_TIMES);
        // 串行执行该任务队列
        queueSet.downloadSequentially(tasks);
        // 并行执行该任务队列
        //queueSet.downloadTogether(tasks);
        queueSet.start();
VincentJin-91 commented 4 years ago

我也遇到了同样的情况。。。