Unity编辑器中的Firebase初始化失败

时间:2020-04-15 17:23:41

标签: firebase unity3d

对于Unity游戏项目的 Firebase 设置,我从一开始就遵循本教程:

Getting started with Firebase in Unity (2019) - Firecasts

视频中包含用于初始化 Firebase SDK的代码:

void Start()
{
    FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(continuationAction: task =>
    {
        FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
    });
}

现在,当我在Unity编辑器中按下播放按钮时,当场出现以下错误对话框: enter image description here

在不同的对话框上多次按“取消”按钮后,在控制台中出现了这些错误。 enter image description here

在此过程中我无法理解的错误! 因此,请指导我解决此问题。

2 个答案:

答案 0 :(得分:3)

要扩展@ 0xBFE1A8的答案:

这是Catalina的一项安全功能,与Firebase框架混合在一起,没有以喜欢的方式对其进行签名。解决是一个三步过程。

首先运行并获得一个非常烦人的对话框。单击取消。您可能需要做很多事情。 Dialog box saying "FirebaseCppApp-6_13_0.bundle" cannot be opened because the developer cannot be verified

如果您单击“移至废纸“”,则Firebase将无法在Unity编辑器中运行(对于包含本机C ++逻辑的MacOS,.bundle将不存在)。

接下来,打开“系统偏好设置”: System preferences in Apple menu

选择“安全和隐私”: System Preferences menu with a box around "Security & Privacy"

在“常规”下,确保您“允许从App Store下载的应用程序和确定的开发人员使用”(在您单击左下角的解锁按钮之前,它将变为灰色),然后为FirebaseCppApp-6_13_0选择“仍然允许”。束。 General and Allow Anyway selected in the Security & Privacy dialog

我不知道“允许从App Store下载应用程序并确定开发人员”是否必要,但我已设置了它。

最后,在Unity编辑器中再运行一次游戏。现在,您将有一个“打开”选项: Dialog box with open option

如果单击该按钮,那应该很好。

这里的注释:对于某些版本的MacOS Catalina,Unity和Firebase,我不得不停止并重新开始游戏。我最近没必要这样做,但是请注意,您可能需要再切换一次播放。

根据我的经验,您必须在每个项目中进行一次这种舞蹈。即使您必须单击很多“取消”,似乎您一次批准就可以了。

我希望这会有所帮助,原始答案是正确的。

哦,还有一个音符。这是围绕一种Apple安全保护措施进行的(您基本上是说运行此C代码,我相信开发人员)。我是Firebase的开发人员倡导者,因此让Firebase来做自己的事当然是超级好的,并且我假设如果您使用的是SDK,则已经对它有所隐含的信任。您没有授予Firebase根访问权限或类似权限,而是在计算机上运行二进制代码(您可以inspect here的C ++部分)。您应该像对待计算机上运行的任何其他可执行文件一样对待开发库,并在执行以下步骤进行任何其他集成之前,确保您信任SDK。

答案 1 :(得分:0)

只需在Mac上进入安全设置,您就会看到 Firebase 被阻止,因为它具有不受信任的开发人员。允许它在那里使一切正常。