专业的编程技术博客社区

网站首页 > 博客文章 正文

Flutter缓存数据可以怎么做

baijin 2025-05-23 15:15:25 博客文章 2 ℃ 0 评论


木辛老师来了,本节课咱们一起来看看如何在Flutter中使用数据缓存功能吧!

请点击右上角“关注”按钮关注我们哟:跟着木辛老师学习Flutter基础编程知识,变身快乐的编程达人吧~



数据的缓存对于一个APP的性能是至关重要的。通过缓存,你可以避免很多重复的数据加载过程的资源消耗和代码占用,特别是,持续多次的重复数据的请求会导致你的APP速度变得很慢。

实际上,有的时候,你稍微注意一下这一点就会节省很可观的成本支出。

通过本文,大家一起来看看如何使用开源缓存管理器解决方案缓存文件的例子。这些都是通用的,所以呢,可用于任何文件。

使用flutter_cache_manager

这是一个缓存管理器,用来管理APP中缓存目录下的下载和缓存的文件

我们使用这个解决方案,能够通过修改很多参数设置文件的保持时间。同时,使用缓存控制 http 头来高效检索文件。


STEP1:装它,装它,装它!

安装它的方法还是老一套,如果你是第一次看木辛老师的文章,不知道怎么安装,那么请往下看;如果你已经对安装组件非常熟悉了,直接跳到STEP2吧。

修改项目目录下的pubspec.yaml,并添加如下依赖:

dependencies:
 flutter_cache_manager: ^3.1.2

添加完了,就执行同步命令进行组件的下载:

flutter pub get

或者你可以直接安装组件:

flutter pub add flutter_cache_manager

STEP2:开始写代码

万事都是要从导入库开始的

import 'package:flutter_cache_manager/flutter_cache_manager.dart';

万事具备就可以开始啦

来!获取一个文件试试

var file = await DefaultCacheManager().getSingleFile(url);

就是这么简单,有木有?

再来看看更多有用的函数

getFileStream(url) :返回一个数据流,如果已经被缓存在本地,则直接返回;否则会去网上拉取一次数据;

getFileStream(url, withProgress: true) :当你设置了第二个参数为True的时候,如果当前文件没有被缓存的话,就会去网上下载并且会得到下载进度;

downloadFile(url):直接从网络上下载;

getFileFromCache :仅从缓存中检索,当文件不在缓存中时不返回任何文件;

putFile :允许在不下载的情况下,直接将新文件直接放入缓存中;

removeFile :删除缓存中的文件;

emptyCache :清除缓存中的所有文件。


好啦,今天就讲到这里吧,缓存的操作还是很简单的,大家一起去试试吧。


请大家关注木辛老师的课程哟,获取更多编程知识和编程技巧。接下来,木辛老师和大家一步一步地学习Flutter知识吧。

快乐编程,快乐成长!

咱们下节课再见,88~

<script type="text/javascript" src="//mp.toutiao.com/mp/agw/mass_profit/pc_product_promotions_js?item_id=7020989624470241830"></script>

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表