具有不同 Firebase 项目的 Flutter Web 应用程序

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

我确实有一个 Flutter Web 应用程序,但由于我们的工作流程,我们使用多个 Firebase 项目(开发、阶段、产品)进行托管。如果我不需要不同的 index.html 文件,这没什么大不了的。

遗憾的是,我们使用 Google SignIn,这将需要一个元 google-signin-client_id 密钥。这在项目之间有所不同。

设置此项目的最佳实践是什么,以便 CI/CD 可以在上传之前无需对 index.html 进行任何更改来部署它?这还有可能吗?

google-signin firebase-hosting flutter-web
2个回答
2
投票

我自己的解决方案,我在某处找到的:

  • 创建风味文件夹(例如/web_flavors/dev 和 /web_flavors/prod)
  • 创建一个脚本,在编译之前将 index.html 从该风味文件夹复制到 /web

这样您在构建管道中将始终拥有正确的配置。

我唯一的“问题”是,如果我需要在 index.html 中添加更多 HTML/JScript 代码,我必须维护这两个文件。


0
投票

您可以按照本文使用javascript在运行时编辑index.html https://gpalma.pt/blog/flutter-web-flavors/

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