FirebaseのValueEventListenersを使用した適切なスレッド管理
Firebase ValueEventListenerは別のスレッドで実行され、スレッド管理に関する懸念を引き起こします。効率的なリソースの使用率を確保するには、アプリケーションのライフサイクルに基づいて適切な場合はValueEventListenersを削除する必要があります。関連するアクティビティはもはやアクティブではありません。これは、次のライフサイクル方法で行うことができます:
onstart
:onstopでリスナーを削除します。 on Pause。 ]ValueEventListenerを削除するには、次のコードを使用します。 && && &&]を適切に削除することにより、
@Override Start()onstart ontartを保護したvoid { super.onstart(); databasereference ref = firebasedatabase.getInstance()。getReference(constants.client "/" path); ref.keepsynced(true); Ref.AddValueEventListener(new ValueEventListener(){ @オーバーライド public void ondatachange(datasnapshot datasnapshot){ } @オーバーライド public void oncancelled(databaseerror databaseerror){ } }); } @オーバーライド onstop()で保護されたvoid { super.onstop(); Ref.RemoveEventListener(ValueEventListener); }
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3