上传的图像无法在 firebase 中预览。它的文件类型是空白,颤振

问题描述 投票:0回答:1

无法使用 flutter 在 firebase 中预览我的图像...

这是我的 Firebase 控制台屏幕截图。 Screenshot

这是来自画廊的图像选择器服务的代码

Future<File?> getImageFromGallery() async {
    final pickedFile = await _picker.pickImage(source: ImageSource.gallery);
    if (pickedFile != null) {
      image = File(pickedFile.path);
      return image;
    } else {
      Fluttertoast.showToast(msg: 'Error , No Image Selected');
      return null;
    }
  }

使用事件获取文件,然后上传到 firebase 存储:

on<SubmitUserFormDataEvent>((event, emit) async {
      emit(UserFormLoadingState());

     // uploading the picture to firebase storage & get url

      File file = event.profile_image_file;

      String baseName = file.path.split('/').last;

      Reference ref = FirebaseStorage.instance
          .ref()
          .child("profile_images/$baseName"); //generate a unique name

      await ref.putFile(file);
      String imageUrl = await ref.getDownloadURL();
      print(imageUrl);

成功上传到firebase并获取downloadUrl。如果我点击 Chrome 中的下载网址,它会自动开始下载,但图像没有显示。这就是为什么我无法将其显示到 UI。

获取下载网址我无法将图像显示到用户界面..我想像这样预览我的图像。我怎样才能做到这一点? Screenshot

flutter firebase firebase-storage flutter-image-picker
1个回答
0
投票

将图像扩展名添加到文件,同时将其上传到 Firebase Storage,如下所示

await ref.putFile(file,
SettableMetadata(
        contentType: "image/jpeg",
      ),
);

© www.soinside.com 2019 - 2024. All rights reserved.