downloadMediaToLocalCache function

Future<String?> downloadMediaToLocalCache(
  1. String mediaUrl,
  2. String mediaName
)

Download locally the file and return the file path if succes, or null if error.

Implementation

Future<String?> downloadMediaToLocalCache(String mediaUrl, String mediaName) async {
  try {
    if (getTempDir != null) {
      String savePath = "${(getTempDir as Directory).path}/$mediaName";
      if (getShowLogs) developer.log('📦 downloading media: $mediaUrl', name: 'Cached Media package');
      var dio = Dio();
      final response = await dio.download(mediaUrl, savePath);
      if (response.statusCode == 200) return savePath;
    } else {
      if (getShowLogs) developer.log('❌  Temp directory not found!', name: 'Cached Media package');
    }
    return null;
  } catch (e) {
    if (getShowLogs) developer.log('❌ Error - media : $mediaUrl', name: 'Cached Media package');
  }
  return null;
}