我的 Swift 应用程序在 FirebaseStorage/Storage.swift 第 49 行遇到致命错误,其中使用 FirebaseApp.app() 创建 Firebase 存储实例!。该错误指出“致命错误:在解包可选值时意外发现 nil。”
以下是相关代码片段:
@objc(storage) open class func storage() -> Storage {
return storage(app: FirebaseApp.app()!)
}
我正在使用环境变量打开项目:
open --env FIREBASE_SOURCE_FIRESTORE path/to/.xcodeproj
该问题似乎与强制展开 FirebaseApp.app() 有关,并且会导致 nil 值。我正在使用 VisionOS Beta 模拟器在 XcodeBeta 15.1 beta 3 上运行该应用程序。
任何关于为什么 FirebaseApp.app() 可能为零以及如何处理这种情况的见解将不胜感激。
我已尝试以下步骤来解决该问题,但没有成功:
清理导出数据。 重新启动 Xcode。 检查了 Firebase 配置。
看起来你在
FirebaseApp.app()
被调用之前使用了 FirebaseApp.configure()
。根据文件:
应在应用程序启动后、使用 Firebase 服务之前调用此方法。该方法应该从主线程调用并包含同步文件 I/O(从磁盘读取 GoogleService-Info.plist)。
我认为您应该在收到
FirebaseApp.app
时重新检查并致电configure
。
@objc(storage) open class func storage() -> Storage? {
if let defaultApp = FirebaseApp.app() {
return storage(app: defaultApp)
} else {
FirebaseApp.configure()
return storage(app: FirebaseApp.app())
}
}