uploadFile method
Implementation
Future<String?> uploadFile() async {
if (path != null && file != null) {
try {
var _downloadUrl = '';
final _storage = FirebaseStorage.instance;
final _ref = _storage.ref().child(path!);
final _uploadTask = _ref.putFile(file!);
_uploadTask.snapshotEvents.listen((event) {
var _progress =
event.bytesTransferred.toDouble() / event.totalBytes.toDouble();
if (onProgressUpdate != null) onProgressUpdate!(_progress);
});
await _uploadTask.whenComplete(() => print('Upload Complete'));
_downloadUrl = await _ref.getDownloadURL();
return _downloadUrl;
} catch (e) {
print(e);
print('Error!!!: Uploading image to firebase storage');
}
}
return null;
}