flutter - 清除本地缓存后显示旧缓存图片,想显示新下载的网络图片
问题描述
在我的应用程序中,我从网络下载了一张图片,然后将此图片保存在本地缓存存储中,并使用特定名称,例如test.jpeg
,然后我test.jpeg
在 Android 设备中显示该图片。
如果我在 android 设置中清除应用程序的本地缓存,然后再次从网络下载新图像并使用相同的名称 ( test.jpeg
) 保存新图像。然后我显示图像,我希望应该显示新图像,但它显示的是旧图像。
杀死应用程序并再次运行后,它会显示新图像。
要下载并保存图像,我使用Dio
库。
这是下载并保存到本地目录的示例代码
Dio client;
String imageSavePath =
path.join((await getTemporaryDirectory()).path, “test.jpeg”);
await client.download(url, imageSavePath);
那么,如何在不关闭应用程序的情况下显示新下载的图像。
解决方案
请查看以下链接https://api.flutter.dev/flutter/painting/imageCache.html
import 'package:flutter/services.dart';
imageCache.clear();
它可能对你有用。
推荐阅读
- javascript - 尝试使用 Discord 的 oauth2 时出现“invalid_grant”错误
- c++ - 任何类型数组的模板规范
- wordpress - 父母的Wordpress wp_get_post_terms订单未正确订购子孙
- c# - Blazor 应用程序生成错误的 MvcApplicationPartsAssemblyInfo.cs
- r - 如何删除 R 中的节点子节点
- linux - libbpf:找不到外部“不太可能”的 BTF:-2
- ios - SwiftUI 中的旋转效果
- python - Pytorch 数据集。一旦捕获异常,项目似乎没有添加到列表中
- sql - 如何使数据库能够相互连接?
- javascript - 在不记录用户的情况下修改数据库的方法?