gpt4 book ai didi

swift - 为什么 Firebase 在应用程序崩溃时不支持 onDisconnect?

转载 作者:行者123 更新时间:2023-11-28 08:15:02 25 4
gpt4 key购买 nike

我习惯了我有一个小错误导致应用程序崩溃。该错误很可能发生在从 Firebase 查询数据时(是的,是我的错)。这是应用程序启动时将执行的第一个函数:

let currentUser = FIRAuth.auth()?.currentUser?.uid
let con = self.gameRef!.childByAutoId()
self.usersKey = con.key
let values = ["username": "test", "score": 0, "userID": currentUser!] as [String : Any]
con.updateChildValues(values)
con.onDisconnectRemoveValue()

然后在设置之后,我从 Firebase 查询一个数组,但我确实设置了一些错误的值,导致应用程序崩溃。 onDisconnected 函数永远不会执行。我等了一整天,我的信息仍然显示在实时数据库中。如果这段代码是在服务器端执行的,服务器怎么可能还认为我连接上了呢?关闭应用程序并打开飞行模式将正确断开连接。

最佳答案

发生这种情况是因为您的应用未正常关闭。为了触发该功能,必须在应用程序关闭并清除所有连接时触发。它在崩溃时无法执行此操作,因为它不会执行比已经执行的代码更多的代码。

您可以围绕该部分代码包装一个异常处理程序,然后在该异常上执行您需要的操作。

关于swift - 为什么 Firebase 在应用程序崩溃时不支持 onDisconnect?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42820074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com