admin 管理员组

文章数量: 1184232

Flutter 获取应用缓存和清理缓存

在 Android 和 iOS 中,都有需要获取应用缓存和清除应用缓存的功能,那么在 Flutter 里面应该怎么做呢?

要想获取到应用缓存,我们就必须找到用来装缓存数据的文件夹,所以这里我们需要引入 path_provider , 用来获取 Android 和 iOS 的缓存文件夹,然后再根据文件循环计算出缓存文件的大小。

首先,我们先简单介绍一下 path_provider 中获取文件夹的方法:

getExternalStorageDirectory();  // 在iOS上,抛出异常,在Android上,这是getExternalStorageDirectory的返回值
getTemporaryDirectory();  // 在iOS上,对应NSTemporaryDirectory()返回的值,在Android上,这是getCacheDir的返回值。
getApplicationDocumentsDirectory();  // 在iOS上,这对应NSDocumentsDirectory,在Android上,这是AppData目录

直到如何使用 path_provider 后,我们正式开始:

1、获取缓存(加载缓存)
///加载缓存
  Future<Null> loadCache() async {
    Directory tempDir = await getTemporaryDirectory();
      double value = await _getTotalSizeOfFilesInDir(tempDir);
      /*tempDir.list(followLinks: false,recursive: true).listen((file){
          //打印每个缓存文件的路径
        print(file.path);
      }

本文标签: 缓存和清 获取应用 编程