android - 在与另一个 Google Cloud 项目不同的项目下连接 Firebase 项目
问题描述
我目前有2 个 firebase/google 云项目。一个用于前端,一个用于托管应用程序引擎的后端。我想使用 firebase 从 FCM 令牌发送推送通知。
我正在使用的代码如下:
Firebase.app = admin.initializeApp();
这样做是因为它使用了我的后端 firebase 项目,而不是我的前端的 firebase 项目。要连接到不同项目的 firebase,据我所知,我必须执行以下操作:
Firebase.app = admin.initializeApp({
credential: admin.credential.applicationDefault(),
});
而且我需要一个名为的环境变量GOOGLE_APPLICATION_CREDENTIALS
,它必须指向一个google-credentials.json
包含 JSON 对象的文件,该对象具有不同应用程序的 google 凭据。
我没有上传我的 google 凭据 json 文件,因为我正在使用我的 Github 中的云构建。我正在尝试以下方法:创建json对象的Base64字符串并将其存储在一个变量中,然后从解码的base64字符串创建一个json文件,然后指向GOOGLE_APPLICATION_CREDENTIALS
创建的文件。但是谷歌应用引擎不允许写入文件,所以这是一个死胡同,除非有什么东西可以让我写入文件。
有什么方法可以将前端的firebase项目链接到我后端的google cloud项目,以便google cloud项目直接链接前端的firebase项目。如果没有,那么有没有办法可以轻松地将 firebase 项目从前端 firebase 项目迁移到后端 firebase 项目?
任何建议都会有很大帮助。谢谢!
解决方案
没有直接的方法可以将 Firebase 应用程序从一个项目迁移到另一个项目。您可以参考这个 stackoverflow线程来找到它。此外,也无法将 App Engine 应用程序从一个项目迁移到另一个项目。相反,您必须在新项目中部署 App Engine 应用程序。
因此,您的关注范围缩小到哪一个对您来说更容易。我建议将 App Engine 应用程序部署在您的 Firebase 前端已经存在的同一个项目中。因为它看起来更容易,因为您只需更改 SDK 或命令行界面中的默认项目配置并遵循此文档。
推荐阅读
- python-3.x - 如何使用 epel 在 Redhat 7.4 Server 上安装 Python3.6?
- html - 如何找到缩放的轮播图像的大小
- android - 创建用于纵向活动的“横向”布局
- bash - 在模具上导出 bash 变量
- python - 从训练有素的自动编码器中为解码器获取多个层
- aws-lambda - DynamoDB - 排序键属性名称
- c++ - 如何在 C++ 中的同一行上两次 getline()?
- ionic-framework - ionic 4 url 段未定义未在承诺中捕获
- android - 如何在 Android Studio 中导入 androidx.appcompat.app.AppCompatActivity?
- java - 运行 WordCount 示例的 GCP 数据流快速入门错误:未知生命周期阶段“.mainClass=org.apache.beam.examples.WordCount”