Firebase 代码 运行 在其他一切之后
Firebase Code Running After Everything Else
我正在使用 Firebase 制作一个 Android 应用程序,在我的一项活动中,我需要先从 Firebase 读取数据,然后再 做任何其他事情。为此,我使用了 ValueEventListener
。问题是,Android 运行首先 剩下的代码,然后 result/runs 监听器 [=12] 中的代码=] 方法。我知道这一点是因为我使用 Logs 进行了调试,结果确实比其余代码 运行s.
几秒后到达
我见过这样的例子,有人在另一个方法中查询后编写您想要 运行 的代码,然后在 onDataChange()
中调用该方法。我尝试这样做,还尝试将侦听器移动到另一个 class 并调用该方法,甚至尝试使用变量控制代码流,但没有任何效果。我能做什么?
顺便说一句,我不知道这是否会以任何方式影响但是,我依赖于 Firebase 结果的代码片段在 onStart()
方法中,所以我想 Android 会总是先 运行 onStart()
然后从侦听器获取结果。
谢谢!
ValueEventListeners 是异步的,因此它们不会 运行 首先。相反,尝试从 onDataChange()
函数内部调用一个函数来执行您想对侦听器执行的操作。
我正在使用 Firebase 制作一个 Android 应用程序,在我的一项活动中,我需要先从 Firebase 读取数据,然后再 做任何其他事情。为此,我使用了 ValueEventListener
。问题是,Android 运行首先 剩下的代码,然后 result/runs 监听器 [=12] 中的代码=] 方法。我知道这一点是因为我使用 Logs 进行了调试,结果确实比其余代码 运行s.
我见过这样的例子,有人在另一个方法中查询后编写您想要 运行 的代码,然后在 onDataChange()
中调用该方法。我尝试这样做,还尝试将侦听器移动到另一个 class 并调用该方法,甚至尝试使用变量控制代码流,但没有任何效果。我能做什么?
顺便说一句,我不知道这是否会以任何方式影响但是,我依赖于 Firebase 结果的代码片段在 onStart()
方法中,所以我想 Android 会总是先 运行 onStart()
然后从侦听器获取结果。
谢谢!
ValueEventListeners 是异步的,因此它们不会 运行 首先。相反,尝试从 onDataChange()
函数内部调用一个函数来执行您想对侦听器执行的操作。