2017-02-02 59 views
0

我做了一些研究和跨此帖一:使用Firebase进行Android开发时,是否需要自行处理线程?

Does Firebase handle threading on Java Server SDK with App Engine?

但事实是后是谁在使用谷歌应用程序引擎(GAE)发展与火力地堡一起应用的人。我没有使用任何服务器来帮助我,例如Google App Engine(GAE)我只是简单地使用Android Studio开发我的应用程序,然后Firebase负责后端任务,例如对用户进出内容进行签名,上传和检索图像,填充常见的视图和列表视图。

所以问题是:

  1. 当我与火力地堡进行交互,例如,填充一个RecyclerView从火力地堡的图像做我要照顾的是,在后台线程或火力地堡已经被设计处理后台任务本身?

  2. 另外,如果我的应用程序使用相机意图允许用户上传/上传图片,我是否必须在后台线程中处理该问题,以及在使用Firebase将图片存储到后端并立即将其拉回时为他们显示?

+0

嗨。抱歉。我有点困惑。如果您使用Android SDK,只要您正确使用API​​,还有什么需要担心的? –

+1

Firebase在单独的线程中处理所有网络请求。照相机意图不需要在单独的线程中调用,并且Firebase存储也自行管理图像上载。 –

回答

1

Firebase实时数据库SDK在Android上处理线程的方式与使用管理(服务器)SDK的方式不同。在Android上,每次都会在主线程中调用所有侦听器。所有查询都将在您无法控制的后台线程上处理。目前没有办法改变这种行为。如果你需要你的听众在其他线程上工作,你将不得不根据你的需要进行安排。

一般来说,在Android上处理Firebase时,您不必担心其线程,只需将上述知识用于您所做的一切。您与其他组件(如相机)交互的方式与您处理Firebase的方式无关。一般规则适用于,如果您要做一些冗长或阻塞的事情,则不应在主线程中执行此操作,并且Firebase不会强制您这样做。

相关问题