如何解决在Flutter中使用Dio包下载多个文件
我正在尝试使用dio包下载多个文件。从这个git issue中,我发现future.wait可以用来完成此任务,尽管我可以同时更新多个文件,但不能更新数据库。这是下载代码段
download(Attachment attachment) => work(context,() async {
final dio = Dio();
final path = await getLocalFilePath(attachment);
var downloadRequest = dio.download(
attachment.url,path,deleteOnError: true,onReceiveProgress: (count,total) {
setState(
() {
_downloadProgress[attachment.url] = count / total;
print(_downloadProgress[attachment.url]);
},);
},).then(
(value) async {
await ReviewDownloadsDB().add({
'id': attachment.id,'name': attachment.name,'url': attachment.url,'path': path
});
},);
Future.wait([downloadRequest]);
});
有人可以告诉我我要去哪里错了,如何在下载后将下载的项目添加到我的ObjectDB数据库中。屏幕上显示了完整的代码here。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。