firebase-storage 相关问题

Fire Storage for Firebase(以前称为Firebase存储)通过处理网络中断并提供直观的授权模型,为开发人员提供了强大,安全的Firebase SDK上传和下载。 Firebase存储由Google云端存储提供支持,允许您从原型扩展到生产。

图像不上传到firebase存储加上图像URL不上传到firestore

import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:iinhouse/core/utils/utils.dart'; import 'package:iinhouse/core/widgets/birthdate_picker.dart'; import 'package:iinhouse/core/widgets/gender_picker.dart'; import 'package:iinhouse/core/widgets/pick_image.dart'; import 'package:iinhouse/features/authentication/providers/auth_provider.dart'; import 'package:iinhouse/features/authentication/utils.dart'; import 'package:image_picker/image_picker.dart'; class CreateAccountPage extends ConsumerStatefulWidget { const CreateAccountPage({super.key}); @override ConsumerState<CreateAccountPage> createState() => _CreateAccountPageState(); } class _CreateAccountPageState extends ConsumerState<CreateAccountPage> { late final TextEditingController _firstNameController; late final TextEditingController _lastNameController; late final TextEditingController _emailController; late final TextEditingController _passwordController; XFile? image; DateTime? birthday; String gender = 'male'; bool isLoading = false; final _formKey = GlobalKey<FormState>(); @override void initState() { _firstNameController = TextEditingController(); _lastNameController = TextEditingController(); _emailController = TextEditingController(); _passwordController = TextEditingController(); super.initState(); } @override void dispose() { _firstNameController.dispose(); _lastNameController.dispose(); _emailController.dispose(); _passwordController.dispose(); super.dispose(); } Future<void> createAccount() async { if (_formKey.currentState!.validate()) { setState(() { isLoading = true; }); _formKey.currentState!.save(); await ref .read(authProvider) .createAccount( fullName: '${_firstNameController.text} ${_lastNameController.text}', birthDate: birthday ?? DateTime.now(), gender: gender, email: _emailController.text, password: _passwordController.text, image: image) .then((credential) { if (!credential!.user!.emailVerified) { Navigator.pushNamed(context, '/verify_email'); } }).catchError((_) { setState(() { isLoading = false; }); }); setState(() { isLoading = false; }); } } @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, appBar: AppBar(), body: SingleChildScrollView( child: Padding( padding: const EdgeInsets.all(8.0), child: Form( key: _formKey, child: Column( children: [ GestureDetector( onTap: () async { image = await pickImage(); if (image != null) { print('Image picked: ${image!.path}'); } else { print('Image picking cancelled'); } setState(() {}); }, child: PickImageWidget(image: image)), Padding( padding: const EdgeInsets.all(8.0), child: TextFormField( controller: _firstNameController, validator: (value) => value!.isEmpty ? 'First name cannot be empty' : null, decoration: const InputDecoration( filled: true, fillColor: Colors.white, labelText: 'First Name', hintText: 'First Name', border: OutlineInputBorder(), ), ), ), Padding( padding: const EdgeInsets.all(8.0), child: TextFormField( controller: _lastNameController, validator: (value) => value!.isEmpty ? 'Location cannot be empty' : null, decoration: const InputDecoration( filled: true, fillColor: Colors.white, labelText: 'Last Name', hintText: 'Last Name', border: OutlineInputBorder(), ), ), ), SizedBox( height: 20, ), BirthdatePicker( dateTime: birthday ?? DateTime.now(), onPressed: () async { birthday = await pickSimpleDate( context: context, date: birthday); setState(() {}); }), SizedBox( height: 20, ), GenderPicker( gender: gender, onChanged: (value) { gender = value ?? 'male'; setState(() {}); }), Padding( padding: const EdgeInsets.all(8.0), child: TextFormField( controller: _emailController, validator: (value) => value!.isEmpty ? 'Email cannot be empty' : null, decoration: const InputDecoration( filled: true, fillColor: Colors.white, labelText: 'Email', hintText: 'Email', border: OutlineInputBorder(), ), ), ), Padding( padding: const EdgeInsets.all(8.0), child: TextFormField( controller: _passwordController, validator: (value) => value!.isEmpty ? 'Password cannot be empty' : null, decoration: const InputDecoration( filled: true, fillColor: Colors.white, labelText: 'Password', hintText: 'Password', border: OutlineInputBorder(), ), obscureText: true, ), ), isLoading ? const Center( child: CircularProgressIndicator(), ) : Padding( padding: const EdgeInsets.all(8.0), child: ElevatedButton( onPressed: createAccount, style: ElevatedButton.styleFrom( backgroundColor: Colors.black, fixedSize: const Size(350, 50), disabledForegroundColor: Colors.black.withOpacity(0.38), disabledBackgroundColor: Colors.black.withOpacity(0.12), shape: const RoundedRectangleBorder( borderRadius: BorderRadius.all(Radius.circular(25.0)), ), ), child: const Text( 'Next', style: TextStyle(color: Colors.white), ), ), ), ], )), ), ), ); } }

回答 1 投票 0

在将视频上传到firebase

我将视频上传到Firebase时会遇到“未能发出沙箱扩展”错误。我的图像上传正好,只有视频引起问题。 func testuploadlocalvideo(){ ...

回答 1 投票 0




更新到最新的扑朔迷离后,从firebase存储中加载图像无效

更新了最新的颤音后,我从Firebase存储中收到了加载图像的问题。此错误详细:抛出了另一个例外:http请求失败,状态代码:0,(fb

回答 1 投票 0




java.lang.String android.net.Uri.toString() 在空对象引用上,LogCat 在第 202 行显示此错误

我试图根据存储引用的图像路径是否为空来获取下载Url。 我尝试将整个代码放入 if else 语句中,而不仅仅是

回答 2 投票 0

仅从 Firebase 存储中获取一件物品

我正在尝试建立一个网站来发展我的技能。我尝试做某事,但找不到解决方案。 从“firebase/storage”导入{ getStorage,ref,listAll }; 常量存储 =

回答 2 投票 0

我的 flutter 应用程序无法从我的 firestore 读取 firebase url 的图像

我的networkimage可以从其他链接读取图像,但是当它来自firestore时它无法读取,我不知道为什么,我已经检查过并且控制台显示的链接工作正常,首先.. .

回答 2 投票 0

Flutter Firebase 存储上传时间太长但仅在 IOS 上

我正在为 Android 和 ios 应用程序开发上传功能,并且我正在使用 Firebase Storage。我正在上传大小仅超过 100kb 的小图像。一切正常...

回答 2 投票 0

Firebase Storage Put 无法获取对象

使用Web版SDK将图像存储到Firebase Storage。文件确实已上传,但在尝试获取下载 URL 时不断收到以下消息 代码:“存储/非对象...

回答 5 投票 0

如何在离线状态下管理对 Firestore 和 Cloud Storage 的写入?

我有一个 flutter 应用程序,其中有一个 Stream>>?监听我的 Firebase Firestore 数据库中的用户帐户。 我在测试时遇到了问题...

回答 1 投票 0

在 Flutter 中,如何在离线状态下管理对 Firestore 和 Cloud Storage 的写入?

我有一个 flutter 应用程序,其中有一个 Stream>>?监听我的 Firebase Firestore 数据库中的用户帐户。 我在测试时遇到了问题...

回答 1 投票 0

Firebase-Storage 访问“..”已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头

我正在使用以下代码加载图像: const blob = 等待获取( “https://firebasestorage.googleapis.com/...?alt=media” ) .then((r) => r.blob()) 常量读者...

回答 1 投票 0

为 Firebase 存储中的文件设置缓存

我有一个在 Firebase 上运行的 PWA。我的图像文件托管在 Firebase 存储上。我注意到我的浏览器不保存从存储系统加载的文件的缓存。浏览器请求 Fi...

回答 6 投票 0

Firebase 存储桶域显示“firebasestorage.app”而不是“appspot.com”

我目前正在开发一个 Firebase 项目,我正在尝试配置 Firebase 存储。我正在使用 Spark 计划(免费套餐),我注意到两个问题: 1.我的 Firebase 配置中的 storageBucket...

回答 1 投票 0

Firebase 云存储(用于项目)

我正在开发一个新项目,并计划使用 Firebase 存储来处理文件上传。在我之前的一些项目中,我能够根据 Spark 计划免费使用 Firebase 存储

回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.