Flutter&Firebase:如何检查我的图片是否成功上传到Firebase Storage?

时间:2020-09-11 07:39:06

标签: image firebase flutter google-cloud-firestore firebase-storage

Flutter和Firebase:如何检查我的图片是否成功上传到Firebase存储?

我试图找到一种方法查看图片是否成功上传,以便我可以启动和停止LoadingScreen()

final StorageReference firebaseStorageRef = FirebaseStorage.instance
        .ref()
        .child('$path/${userID}_${timeStamp}_${number}_${tag}.jpg');

final StorageUploadTask uploadTask = firebaseStorageRef.putFile(image);

我期待着大家的来信。预先谢谢你!

2 个答案:

答案 0 :(得分:1)

您可以在此处上传和验证是否将图像上传到FirebaseStorage

  final StorageReference firebaseStorageRef = FirebaseStorage.instance
      .ref()
      .child('$path/${userID}_${timeStamp}_${number}_${tag}.jpg'); 
  StorageUploadTask uploadTask =
      firebaseStorageRef.putFile(image);
  StorageTaskSnapshot storageSnapshot = await uploadTask.onComplete;
  var downloadUrl = await storageSnapshot.ref.getDownloadURL();
  if (uploadTask.isComplete) {
    final String url = downloadUrl.toString();
    print(url);
    //Success! Upload is complete
  } else {
    //Error uploading file
  }

上传完成后,您将获得downloadUrl

答案 1 :(得分:1)

您可以使用StorageUploadTask的{​​{3}}属性。

  final StorageReference firebaseStorageRef = FirebaseStorage.instance
      .ref()
      .child('$path/${userID}_${timeStamp}_${number}_${tag}.jpg'); 
  StorageUploadTask uploadTask =
      firebaseStorageRef.putFile(image);
  StorageTaskSnapshot storageSnapshot = await uploadTask.onComplete;
  // Here you know that the picture/file is succesfully uploaded.
  // You can stop your LoadingScreen().

请注意,您可以使用一些try-catch子句来处理异步方法的错误。

相关问题