我正在使用这个库 https://pub.dartlang.org/packages/flutter_cache_manager#-readme-tab- 我有两个问题。 首先,我不清楚 getFile(url) 函数是否自动缓存返回的文件,或者我是否必须在返回后调用 putFile() 。
其次,我看到您可以覆盖 BaseCacheManager 来设置 maxAgeCacheObject。操作系统是否会自动删除已过期的文件,或者我必须确保它们已被清理。
感谢您的帮助:)
最佳答案
ad 1) getFile(url)
方法将“自动”缓存结果。 putFile()
方法仅可用于急切地预缓存数据。
ad 2) 两者,你应该确保你有一个合理的上限。但由于文件存储在允许操作系统删除的临时目录中,因此如果设备存储空间不足,文件将被删除。 --- FWIW - 不,操作系统不会删除太旧的文件,但缓存管理器会删除早于 maxAgeCacheObject
的对象。 (操作系统不知道文件的年龄,它可能会先删除最旧的文件,但不能保证这一点。)
关于caching - Flutter 缓存管理器库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55580068/