我正在使用此库https://pub.dartlang.org/packages/flutter_cache_manager#-readme-tab- 我有两个问题。 首先,我不清楚getFile(url)函数是否自动缓存返回的文件,或者返回后是否必须调用putFile()。
第二,我看到您可以重写BaseCacheManager来设置maxAgeCacheObject。操作系统会自动删除已过期的文件吗?还是必须确保已清除它们。
感谢您的帮助:)
答案 0 :(得分:0)
ad 1)getFile(url)
方法将“自动”缓存结果。 putFile()
方法仅可用于预先缓存数据。
ad 2)两者都应确保您有一个合理的上限。但是由于文件存储在允许操作系统删除的临时目录中,因此如果设备用尽了存储空间,这些文件将被删除。 --- FWIW-否,操作系统不会删除太旧的文件,但是缓存管理器将删除早于maxAgeCacheObject
的对象。 (操作系统不知道文件有多旧,它可能会首先开始删除最旧的文件,但是对此不做任何保证。)