我正在使用onChildEventListener来检索10,000名儿童
完成操作所需的时间约为5秒
在此期间,该应用程序冻结
有没有办法让它更快?
此外,我尝试使用ValueEventListener,发现通过子项循环更快。无论如何,这不是一个可靠的解决方案,所以我切换回onChildEventListener。
答案 0 :(得分:1)
无论您使用ValueEventListener
还是ChildEventListener
,数据检索过程都完全相同。唯一的区别在于如何在您的应用中触发事件或回调。此外:数据库的所有网络活动都在一个单独的线程上进行。
这意味着它不会检索冻结您的应用的数据,但更有可能是您处理onDataChange()
回调中数据的方式。如果您在那里做了大量工作,那么您希望在主线上完成这项工作。