firebase - Flutter 无法将文件上传到 Firebase 存储
问题描述
我只是尝试使用Firebase CloudFirestore/Storage上传图片。这是我的方法:
Future<void> uploadFile() async {
File file = File(croppedImagePath);
try {
int randomNumber = Random().nextInt(10000);
String imageLocation = 'images/image$randomNumber.jpg';
await FirebaseStorage.instance.ref(imageLocation).putFile(file); // <- crash
_addPathToDatabse(imageLocation);
} on FirebaseException catch (e) {
// e.g, e.code == 'canceled'
print(e.message);
}
}
但这会崩溃:
发生异常。MissingPluginException(MissingPluginException(在通道 plugins.flutter.io/firebase_storage 上找不到方法 Task#startPutFile 的实现))
这是我添加的pubspec.yaml
:
firebase_core: ^1.3.0
cloud_firestore: ^2.3.0
firebase_storage: ^9.0.0
我尝试运行flutter clean
并多次重新启动项目......我在这里错过了什么?为什么它不起作用?
解决方案
我建议您检查文件是否正确,您也可以尝试将文件转换为字节。
推荐阅读
- scrapy - 如何在收到 SIGINT 或 Scrapyd 的 cancel.json 调用时回调 Scrapy spider 方法?
- riscv - 带有 riscv64 的线程本地存储
- csvhelper - 公共字段而不是属性的自动映射
- java - @AllArgsConstructor 是否为静态成员创建构造函数?
- node.js - 使用 multer , expresses , typescript 上传图片
- python - 如何查看经过分类器的数据?
- c# - RServeCLI 试图理解 C# 中的数据帧
- java - 带有列表成员的 JDBC 结果集到 java POJO
- fxml - JavaFX 11 使用 fxml 在 PhongMaterial 上设置颜色
- sql - 在季度中添加 +1