Эта функция сохраняет в FireStore: `Instance of 'Future', а не url. Без метода toString выдается ошибка «будущее динамическое c не может быть присвоено строке».
onPressed: () {
final StorageReference ref = FirebaseStorage.instance
.ref()
.child('images')
.child('image4.jpg');
ref.putFile(image);
final String downloadUrl = ref.getDownloadURL().toString();
Firestore.instance.collection('images').add({"url": downloadUrl});
})