在做了一些研究后,我仍然不清楚Android如何从Firebase下载数据。 Android有许多性能方面的最佳实践,例如使用AsyncTask或Volley,但我需要了解Firebase在我们做出决定之前的运作方式。
更具体地说,Firebase是否在单独的线程中加载数据?当我在FirebaseRecyclerAdapter中下载配置文件(带有一些文本的配置文件图片)时,我想首先下载每个配置文件的文本,然后在单独的线程中下载图片。我知道如何在从互联网上正常下载数据时这样做,但我不知道Firebase已经做了什么。
答案 0 :(得分:1)
Firebase为其所有(网络,磁盘等)操作使用单个单独的线程。但是您的回调将始终在主线程上调用,以便您可以安全地与UI进行交互。
但是如果你在回调中执行任何非平凡的操作,那么(像往常一样)你的工作是在主线程上执行这些操作。因此,AsyncTask
或IntentService
仍然是正确的方法。