Flutter集成Firebase框架

news2024/11/16 1:19:59

本文档的插件版本

  • flutter:3.19.4
  • dart版本:3.3.2 
  • firebase_core:2.30.0

  • firebase:13.7.3
  • flutterfire:1.0.0

前言

Flutter集成Firebase框架要完成以下内容

  • 在Firebase网页端创建一个项目
  • 在终端全局安装Firebase工具,使电脑可以访问Firebase中的项目内容
  • 在终端中全局安装FlutterFire工具,使项目和Firebase项目工具
  • 项目中按照firebase_core插件,使项目可以使用Firebase中的多个工具

集成步骤

一、在Firebase网页端创建项目

在Firebase中添加项目,访问https://console.firebase.google.com/u/0/,点击添加项目

输入项目名称后点击继续,选择一个账号后点击创建项目,等待段时间即可创建成功,点击继续按钮即可进入控制台中

点击flutter图标按钮,配置firebase添加到flutter应用

二、在电脑上全局安装Firebase工具

firebase工具是电脑端和firebase网页端关联的工具

安装Firebase CLI

参考文档:https://firebase.google.com/docs/cli?hl=zh&authuser=0#windows-npm

# 如果安装后就不用再执行这个指令了

npm install -g firebase-tools

登录并测试Firebase CLI

# Node.js版本 >=18.0.0

firebase login

输入y允许Firebase收集CLI和Emulator Suite的使用情况和错误报告信息,然后会跳转到网页选择google账号登录firebase CLI

如果出现登录失败,也不用担心,进入终端后我们发现他在第二步给了我们一个地址,我们去访问这个地址即可去重新登录firebase CLI

选择是的,我刚运行了这个命令,接着我们就会看到一个会话id,进入终端我们也能看到一个会话id,如果两者相同,则点击是的,这是我的会话id按钮

这是我们就会得到授权代码,复制授权代码到输入到终端中

通过列出 Firebase 项目来测试 CLI 是否已正确安装,以及是否能访问您的帐号:

firebase projects:list

三、项目中安装FlutterFire工具

FlutterFire 是一组 Flutter 插件,可将 Flutter 应用程序连接到Firebase。

安装并运行 FlutterFire CLI

从任何目录运行以下命令:

# 如果全局装过,忽略此指令

dart pub global activate flutterfire_cli

然后,在您的 Flutter 项目的根目录下,运行以下命令后会在终端中让你选择选择集成的平台,默认全选,点击空格可以实现平台的选择与取消,点击回车进行确认

# 这里的project根据自己的来

flutterfire configure --project=intelligent-campsite

这会自动将选择的平台集成到 Firebase 中,并向您的 Flutter 项目添加 lib/firebase_options.dart 配置文件。

添加Firebase 插件

在使用任何 Firebase 服务之前,您必须首先安装该firebase_core 插件,该插件负责将您的应用程序连接到 Firebase。

flutter pub add firebase_core

下载完后添加到环境变量

vi ~/.bash_profile

 export PATH="$PATH":"$HOME/.pub-cache/bin"

#退出编辑器并执行下面指令来生效

source ~/.bash_profile

四、在代码中初始化Firebase

接下来需要将生成的选项提供给该initializeApp方法。由于这是异步操作,因此main可以修改该函数以确保在运行应用程序之前完成初始化。

在main.dart中添加initializeApp方法

import 'package:firebase_core/firebase_core.dart';

import 'firebase_options.dart';

void main() async {

  WidgetsFlutterBinding.ensureInitialized();

  await Firebase.initializeApp(

    options: DefaultFirebaseOptions.currentPlatform,

  );

  runApp(MyApp());

}

重新运行项目,既可以实现在Flutter中集成Firebase的功能

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2104744.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中断管理笔记

1、异常与中断的基本概念 异常是指任何打断处理器正常执行,并且迫使处理器进入一个由有特权的特殊指令执行的事件。 异常可以分为两类:同步异常和异步异常。 由内部事件(像处理器指令运行产生的事件)引起的异常称为同步异常。异…

雅思7分相当于六级多少?雅思考试怎么备考才能到7分?

雅思7分相当于六级多少?雅思考试怎么备考才能到7分? 六级500分也不能和雅思7分相提并论,毕竟两者压根不在一个层级。楼主两月自学雅思获得8分,系统总结了雅思速成的提分秘籍,跟着我的方法走,两月屠鸭7分问题不大。1.6…

你做的SEO为什么效果不够好?

SEO(Search Engine Optimization)即搜索引擎优化,指在不同的搜索引擎中,按照相应的规则与机制提高网站在特定的搜索引擎中的自然排名。作为对产品和服务进行数字宣传营销的重要手段,SEO已然成为各企业提高网站曝光和流…

AI生产力工具暑期迎来大爆发 极光数据:夸克新增用户规模领先

9月3日,极光旗下月狐数据发布《AI生产力工具暑期发展报告》。数据显示,AI生产力工具在用户侧呈现高速增长态势,总体月活跃用户数量达1.7亿。其中,夸克APP实现暑期新增用户数量行业第一,凭借大模型、数据、场景等优势&a…

Java中实现写Word文档

背景&#xff1a;通过java代码&#xff0c;往docx文档中写入标题和段落。 依赖的maven包&#xff1a; <dependency> <groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>5.2.2</version> </depend…

【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率

亲爱的技术员及停车场管理者们&#xff0c;您是否曾遇到过车主在庞大的停车场中迷失方向&#xff0c;耗费大量时间寻找爱车的困境&#xff1f;这不仅影响了车主的停车体验&#xff0c;也无形中增加了停车场的管理难度和运营成本。本文专为解决这一痛点而生&#xff0c;介绍最新…

油猴插件编写测试工具

参考&#xff1a;如何使用油猴插件提高测试工作效率 一、背景 在酷家乐设计工具测试中&#xff0c;总会有许多高频且较繁琐的工作&#xff0c;比如&#xff1a; 查询插件版本&#xff1a;需要打开Chrome控制台&#xff0c;输入好几个命令然后过滤出版本信息。 查询模型商品&…

调用Claude 3.5 API的实战代码

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于大模型算法的研究与应用。曾担任百度千帆大模型比赛、BPAA算法大赛评委,编写微软OpenAI考试认证指导手册。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。授权多项发明专利。对机器学…

CSD三层架构

Web开发三层架构 controller&#xff1a;控制层&#xff0c;接收前端发送的请求&#xff0c;处理请求并响应数据service&#xff1a;业务逻辑层dao&#xff1a;数据访问层&#xff0c;负责数据访问操作 分层解耦 内聚&#xff1a;软件中各个功能模块内部的功能联系 耦合&…

拒绝霸王条约,苹果用户用不了微信了?

相信关注科技圈的同学都知道了&#xff0c;一年一度的科技春晚——苹果新机发布会就要来了&#xff0c;将于北京时间 9 月 10 日凌晨一点召开。带来全新的 iPhone16 系列。 在这之前咱们也有 iPhone16 的爆料&#xff0c;感兴趣的同学可以看下。 iPhone16外观配置敲定&#xf…

Android Gradle 插件的说明

1、前天运行好好的项目&#xff0c;今天运行就报错&#xff1a; 这个意思是Gradle版本低了 这个意思是Gradle plugin(8.5.1) 最高的compileSdk 34&#xff0c;用了35&#xff0c;就不对&#xff0c;因为一开始我们安装的就是35的版本&#xff0c;我们可以安装下34&#xff0c;…

编译原理项目——C++实现C语言编译器输出为8086级汇编(代码/报告材料)

完整的材料 代码见文章末尾 以下为核心内容和部分结果 项目介绍 一个小型的c语言编译器&#xff0c;实现的功能如下&#xff1a; 可以定义多个变量&#xff0c;并且能初始化。可以支持基本的加减乘除运算。可以支持带括号的多个变量的四则混合运算。可以支持单行注释和多行注…

指数分布的两种形式

指数分布是连续概率分布的一种&#xff0c;常用于描述等待时间、寿命等随机变量的分布。 1. 标准形式的指数分布 标准形式的指数分布的概率密度函数&#xff08;PDF&#xff09;为&#xff1a; f ( x ; λ ) { λ e − λ x if x ≥ 0 0 if x < 0 f(x; \lambda) \begi…

MYSQL:删除指定时间范围内每个电站每天发电数据除最大值以外的记录

有一个需求&#xff0c;需要保留每个电站每一天发电数据的最大值记录&#xff0c;其余删除。 表数据大概长这样&#xff1a; MYSQL 5.7写法&#xff1a;&#xff08;因为不支持ROW_NUMBER()函数&#xff0c;采用自定义的变量来代替&#xff09; 首次清理一年内数据&#xff1…

5是否有路通向AGI

5.1是否有路通向AGI

如何在算家云搭建模型Stable-diffusion-webUI(AI绘画)

一、Stable Diffusion WebUI简介 Stable Diffusion WebUI 是一个网页版的 AI 绘画工具&#xff0c;基于强大的绘画模型Stable Diffusion &#xff0c;可以实现文生图、图生图等。 二、模型搭建流程 1.选择主机和镜像 &#xff08;1&#xff09;进入算家云的“应用社区”&am…

一本书加印19次,回答小伙伴们几个写书的疑问

前几天又有一个高校老师加松哥微信&#xff0c;表示本学期选了松哥的书做教材&#xff1a; 松哥在 2019 年 1 月份出版了《Spring BootVue 全栈开发实战》这本书&#xff0c;到现在已经是第六年了。 今年 1 月份收到出版社稿酬的时候&#xff0c;我特意去看了下稿酬通知单&…

渣土车识别算法解决城市治理难题

随着城市化进程的加速&#xff0c;渣土车作为建筑工程中不可或缺的运输工具&#xff0c;其频繁的穿行和装载运输过程往往引发一系列问题&#xff0c;如超载、扬尘污染、乱倒渣土等&#xff0c;对城市环境和交通秩序造成了不良影响。为了解决这些问题&#xff0c;采用基于视觉分…

一文教你StableDiffusion图生图批量处理!

今天给大家讲解一下SD图生图的批量处理功能应该如何使用&#xff5e; 一、图生图批量处理功能的基本用法 首先打开webUI&#xff0c;在图生图页面下我们先找到批量处理的菜单&#xff1a; 最简单的批量处理方法只需要用到【输入目录】和【输出目录】两个功能&#xff1a; 第一…

Java:正则表达式 matches

文章目录 正则表达式作用基本用法小结代码 案例&#xff1a;校验用户输入的电话&#xff0c;邮箱&#xff0c;是否合法\\.是什么意思 黑马学习笔记 正则表达式 由一些特定的字符组成&#xff0c;代表的是一个规则 作用 用来校验数据格式是否合法在一段文本中查找满足要求的内…