cacheFile method
Implementation
Future<File> cacheFile({
required String name,
required String mimeExt,
required List<int> byte,
}) async {
final isGranted = await requestWriteExternalStoragePermission();
if (isGranted) {
try {
// Directory? dir;
// if (Platform.isIOS) {
// dir = await getApplicationCacheDirectory();
// } else {
// dir = await getExternalStorageDirectory();
// }
Directory dir = await getTemporaryDirectory();
var now = DateTime.now().millisecondsSinceEpoch;
var fileName = '$name-$now.$mimeExt';
final file = File('${dir.path}/$fileName');
var raf = file.openSync(mode: FileMode.write);
raf.writeFromSync(byte);
await raf.close();
return file;
} catch (e) {
rethrow;
}
} else {
throw "Permission refused";
}
}