cacheGetSize method

  1. @override
Future<Map<String, dynamic>> cacheGetSize()
override

Implementation

@override
Future<Map<String, dynamic>> cacheGetSize() async {
  String? cacheDirPath;
  if (io.Platform.isAndroid) {
    cacheDirPath = (await getTemporaryDirectory()).path;
  } else if (io.Platform.isIOS) {
    cacheDirPath = (await getTemporaryDirectory()).path;
  }

  if (cacheDirPath == null) {
    return {'size': 0, 'unit': 'bytes'};
  }

  final cacheDir = io.Directory(cacheDirPath);
  int totalSize = 0;
  if (cacheDir.existsSync()) {
    final files = cacheDir.listSync(recursive: true, followLinks: false);
    for (final file in files) {
      if (file is io.File) {
        totalSize += (await file.length()).toInt();
      }
    }
  }
  return {'size': totalSize, 'unit': 'bytes'};
}