Unity 从 Assets/GoogleService-Info.plist 生成 Firebase Android 资源文件 google-services.xml 失败。

8

我想在Unity 2020.1.14中设置Firebase。

我将GoogleService-Info.plist下载到我的资产文件夹中,并在Firebase控制台中设置了一个项目。

但是,一旦我导入FirebaseAnalytics 7.0包,就会出现以下错误:

Generation of the Firebase Android resource file google-services.xml from Assets/GoogleService-Info.plist failed.
If you have not included a valid Firebase Android resources in your app it will fail to initialize.

"python" "/Users/joerg/Projekte/UnityTest/FirebaseTest2012042/Assets/Firebase/Editor/generate_xml_from_google_services_json.py" -i "Assets/GoogleService-Info.plist" -l --plist

Could not find key in plist file: [DATABASE_URL]

我该如何在GoogleService-Info.plist文件中设置[DATABASE_URL]?

谢谢 Joerg


只是补充一下 @iTouch 说的: 8. 如果您不想被收费,可以从 Firebase 控制台中删除实时数据库。 - Laurent
3个回答

11
这真的很令人沮丧。在原始设置教程中没有提到这个问题。我想更多的人会遇到这个问题。因此,以下是解决方案:
  1. 进入Firebase控制台
  2. 选择您的项目
  3. 进入“实时数据库”
  4. 创建实时数据库

创建数据库后。

  1. 进入“项目设置”
  2. 下载 google-services.jsonGoogleService-Info.plist
  3. 替换Unity项目中的这些文件。(这些文件应该在Assets文件夹中,或者如果你已经创建了一个Data文件夹,那么你可以在那里找到它们。)

在新生成的文件中有一个 "firebase_url":。之前缺少了这个。现在应该能解决这个特定的错误信息了。


1
感谢提供详细的说明。值得注意的是:"firebase_url"google-services.json 中,但在 GoogleService-Info.plist 中的键名为 "DATABASE_URL" - amacleod

6

好的,我找到了解决方案:我只需要在Firebase控制台中设置一个数据库,然后将URL写入plist文件即可。这在Google教程中没有提到。


3

简单的解决方案,只需添加这些代码行:

<key>DATABASE_URL</key>
<string>https://unexisting.fake.database.firebaseio.com</string>

顺便说一下,我不建议启用数据库服务,因为它是收费的。如果某些插件以某种方式尝试使用它,你将被收费。我没有使用来自谷歌这些很棒的付费服务的唯一原因是,它们只有后付款选项,无法设置限制(除非你编写了一些复杂的脚本,可以实时运行并在达到一定限制后关闭服务)。许多开发者因为脚本中的某些错误而面临着5000至10000美元的账单问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接