iOS 断言解冻

assertUnfrozen on iOS

我在 iOS 应用程序中使用了 Firebase 实时数据库,我通过 [FIRDatabase setPersistenceEnabled:][FIRDatabase assertUnfrozen] 调用的 Firebase 崩溃报告获得了崩溃报告。 (这些报告还有一个变体,其中来源是 FIRDatabaseConfig 而不是 FIRDatabase)

在我的应用委托的 application:didFinishLaunchingWithOptions: 方法中,我从文件加载 Firebase 配置,然后将持久性设置为启用。对于每 200 名用户中大约有 1 名用户,这会导致 assertUnfrozen 崩溃。我是否以错误的方式初始化了 Firebase,或者是否有人知道出了什么问题?

必须在 FIRDatabase 的任何其他使用之前调用 setPersistenceEnabled instance.This 是崩溃的原因,因此请在调用 setPersistenceEnabled 之前检查您是否正在使用 FIRDatabase 实例。

在我的例子中,我在 applicationDidEnterBackground 中使用了 FIRDatabase 实例,并且在我们打开应用程序后立即在 launchController.As 中使用了 setPersistenceEnabled,在调用 launchController 之前,让应用程序进入 background.Then、applicationDidEnterBackground 被调用并在调用 setPersistenceEnabled.So 之前使用 FIRDatabase 实例,我从 applicationDidEnterBackground 中删除了 firebase 代码,并在调用 setPersistenceEnabled 之后编写了它。