0

私はいくつかの研究を行い、この記事に出くわしています:Android用に開発するFirebaseを使用しているときにスレッドを処理する必要がありますか?

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

しかし、事はポストはFirebaseと一緒にアプリケーションを開発するためにGoogle App Engineの(GAE)を使用している人からです。私はGoogle App Engine(GAE)のような私を支援するためのサーバを使用していません。私は単にAndroid Studioを使ってアプリケーションを開発しています。そして、Firebaseは、ユーザーのサインインとサインアウト、画像のアップロードと取得一般的なビューとリストビューを設定します。

だから、質問は以下のとおりです。

  1. 私はFirebaseと対話していた場合、例えば、Firebaseから画像をRecyclerViewを移入私は、バックグラウンドスレッドでそれの世話をしなければならないのかFirebaseが既に設計されていますバックグラウンドタスク自体を処理する?

  2. また、私のアプリがカメラの意図を使って写真を撮ったりアップロードしたりできるようにするには、Firebaseを使用してバックエンドに画像を保存してすぐに取り戻すときにバックグラウンドスレッドで処理する必要がありますそれらを表示するには?

+0

こんにちは。ごめんなさい。私は少し混乱しています。 Android SDKを使用している場合は、APIを正しく使用している限り、心配することはありますか? –

+1

Firebaseはすべてのネットワーク要求を別のスレッドで処理します。カメラの意図を別のスレッドで呼び出す必要はなく、Firebaseストレージも画像のアップロードを単独で管理します。 –

答えて

1

FirebaseリアルタイムデータベースSDKがAndroid上でスレッドを処理する方法は、管理(サーバ)SDKでの動作とは異なります。 Androidでは、毎回すべてのリスナーがメインスレッドで呼び出されます。すべてのクエリは、制御できないバックグラウンドスレッドで処理されます。現在、この動作を変更する方法はありません。リスナーが他のスレッドで作業する必要がある場合は、必要に応じてスケジュールする必要があります。

一般的に、AndroidでFirebaseを扱う場合、スレッドについて心配する必要はなく、あなたが行っているすべてのことについて上記の知識を使用するだけです。カメラなどの他のコンポーネントとやり取りする方法は、Firebaseの取り扱い方法とは関係ありません。長いルールやブロッキングを行う場合は、メインスレッド上で実行しないでください.Firebaseは強制しません。

関連する問題