Flutter загружает изображение в хранилище firebase, а затем записывает его в хранилище firestore

Я делаю программу, в которой при регистрации пользователя им необходимо загрузить изображение в хранилище firebase, а затем все данные для входа и URL-адрес изображения будут записаны в firestore, как только изображение будет загружено, это мой код:

void signUp(String _email, String _password, File image) async { await _auth .createUserWithEmailAndPassword(email: _email, password: _password) .then((result) async{ await uploadImage(image).then((value) { _firestore.collection(‘users’).doc(result.user.uid).set({ ‘uid’: result.user.uid, ’email’: result.user.email, ‘imageUrl’ : value!=null?value:»» }); }); Future<String> uploadImage(File image) async{ String fileName = p.basename(image.path); Reference storageRef = _fstorage.ref().child(‘upload/$fileName’); UploadTask uploadTask = storageRef.putFile(image); await uploadTask.whenComplete((){ storageRef.getDownloadURL().then((imageUrl) { return imageUrl!=null?imageUrl:»»; }); }); }

Проблема в том, что значение imageUrl, написанное в документе firestore, всегда пусто, даже если файл изображения успешно загружен, любые советы будут приняты во внимание. Благодарность

Вы пытались распечатать значения после загрузки? Возвращает ли он URL?   —  person Jolzal    schedule 08.12.2020

Источник: ledsshop.ru

Стиль жизни - Здоровье!