flutter - 解压文件中的问题 - 内存不足
问题描述
我有一个在 Flex Builder 中开发的销售应用程序。为了通过离线方式使用照片,我将包含所有照片的压缩文件上传到网站,并在需要时使用智能手机进行扫描。在该过程中,将下载到配置文件并存在一个负责任的插件来解压缩存档并将其分配到适当的文件夹中以供以后使用。该压缩文件有 500MB 大小 - 大约 6700 张照片 - 在 Flex 中我没有任何问题可以做到这一点。我正在使用存档包在 Flutter 中重写应用程序,但没有得到相同的结果。在解压缩过程中,我遇到了内存不足的问题。有人已经面临这样的事情了吗?有没有最好的方法来做到这一点?
我已经尝试了其他两种选择: - 要使用 Image.network,但是,其中一个要求是离线工作。- 将所有照片保存在资产文件夹中,但我认为这不是最好的选择,因为应用程序会变得更大
预先感谢您。
按照错误消息和代码
代码:
unarchiveAndSave() 异步{
var zippedFile = await initDir();
var bytes = zippedFile.readAsBytesSync();
var archive = ZipDecoder().decodeBytes(bytes);
for (var file in archive) {
var fileName = '$_dir/${file.name}';
if (file.isFile) {
var outFile = File(fileName);
print('File:: ${outFile.path}');
outFile = await outFile.create();
await outFile.writeAsBytes(file.content);
}
}
print('terminei de descompactar os arquivos');
}
解决方案
推荐阅读
- reactjs - 通过 gatsby-image 使用远程图像
- reactjs - 检查字符串数组是否包含反应中的子字符串值
- python - Pandas:逐步对列值求和
- linux - 从文件名中提取 PATH
- c++ - 尽管使用 endl 冲洗,但没有输出到带有 cout 的终端
- javascript - 去抖功能似乎最初可以工作,但随后停止
- node.js - 节点中的不和谐机器人:无法读取未定义的属性“发送”
- php - 如何在网上商店有效地进行排序和过滤?
- javascript - nock 多个请求模拟
- android - 我需要什么配置,以避免 Android 11 在最小化我的主要任务后杀死我的 SingleInstance Activity?