【问题标题】:Unity3D Firebase: InvalidOperationException: FirebaseApp was not initialized with a bucket nameUnity3D Firebase:InvalidOperationException:FirebaseApp 未使用存储桶名称初始化
【发布时间】:2018-05-11 20:01:06
【问题描述】:

我在 Unity 游戏中使用最新版本的 FirebaseSDK(当前为 4.2.1)。我已经完成了文档中提到的所有设置。实时数据库和身份验证工作正常,但在编辑器中运行时出现以下错误:

InvalidOperationException:FirebaseApp 未使用存储桶名称初始化。

当我执行以下操作时:

StorageReference storageRef = FirebaseStorage.DefaultInstance.RootReference;

但如果我使用存储桶名称进行引用就可以了,例如:

StorageReference storageRef = FirebaseStorage.DefaultInstance.GetReferenceFromUrl("gs://bucketname");

不会产生错误。

有人知道怎么回事吗?

【问题讨论】:

  • 在真机上运行是否有效?
  • 是的,在实际设备上没问题。但它也应该可以在 Unity Editor 上运行,因为我无法在每次进行更改时都在实际设备上进行测试。设备构建非常缓慢。
  • @DougStevenson ,我在原始问题中进行了编辑,如果我使用存储桶名称进行引用,它可以在 Unity 编辑器上正常工作。
  • 对,我并不是说它按预期工作,但这是 SDK 团队需要了解的重要信息。

标签: firebase unity3d firebase-storage


【解决方案1】:

调用 App.Create 时,可以通过 app options 结构体传入选项。我相信这会自动填充,如果您在设备上运行(并且它可以访问 google-services plist/xml)但在编辑器中,您需要指定它。如果您不这样做就调用 FirebaseStorage.DefaultInstance.RootReference,那么它实际上不会知道您的项目的根引用是什么。 (直接从 gs:// 链接获取引用是可行的,因为这些是绝对的。)

在调用 App.Create() 时尝试通过 AppOptions 设置存储桶。

【讨论】:

    猜你喜欢
    • 2018-03-08
    • 2020-01-28
    • 2021-06-15
    • 1970-01-01
    • 1970-01-01
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多