【问题标题】:Should FirebaseDatabase.getInstance() be used sparingly?应该谨慎使用 FirebaseDatabase.getInstance() 吗?
【发布时间】:2016-08-23 19:53:03
【问题描述】:

例如,当我在 android 中使用 SQLiteDatabase 时,打开/关闭大量 SQLiteDatabase 助手通常不是一个好主意。相反,最好创建一种单例,以确保您只打开一个数据库。

假设我有一个带有静态方法的类,它执行大量需要 DatabaseReference 的 Firebase 操作。 示例:

static void checkIfUserIsMatched(...)
static void notifyUser(...)
static void modifyUser(...)

可以在每个方法中调用 FirebaseDatabase.getInstance() 吗?在每个方法中创建一个新的 DatabaseReference?

还是从调用 Activity 传递 DatabaseReference 会更好?

static void notifyUser(mUserReference, hisUserId)

static void notifyUser(myUserId, hisUserId) --> Create the reference inside method

我希望优化的是网络使用和性能。还是这一切都无关紧要,firebase 会为我处理一切吗?

【问题讨论】:

    标签: android optimization firebase firebase-realtime-database


    【解决方案1】:

    FirebaseDatabaseDatabaseReference 对象可以被认为是对底层资源的相对便宜的引用。

    Firebase SDK 在幕后管理这些事情。只有第一次调用 FirebaseData.getInstance() 会完成设置工作,后续调用(在同一进程中)只会重新使用已经完成的工作。

    【讨论】:

      猜你喜欢
      • 2011-02-07
      • 2015-04-30
      • 1970-01-01
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      • 2019-09-19
      • 2014-04-13
      • 1970-01-01
      相关资源
      最近更新 更多