Android 如何将 Firebase 数据库引用传递给新 activity
Android How to pass Firebase Database Reference to new activity
我的 activity 中有 3 个按钮,我正在寻找一种通过 onclick 将数据库引用传递给新的 activity 的方法,因此它会根据按下的按钮从 Firebase 数据库加载内容。
像这样:
- 从 Activity 1 按下按钮 1 > 开始 Activity 2 & 从 Persons Reference > Person 1
加载数据
- 从 Activity 1 按下按钮 2 > 开始 Activity 2 & 从 Persons Reference > Person 2
加载数据
- 从 Activity 1 按下按钮 3 > 开始 Activity 2 & 从 Persons Reference > Person 3
加载数据
我认为我应该使用 putExtra / getExtra 来传递 Intent。但是我如何将它附加到 new activity 中 Firebase 数据库中的特定节点?
我通常会传递 所选人员的 key/ID,或者 节点 的路径calling toString()
on the DatabaseReference
的数据库。根据此信息,您可以为新 activity 中的相同数据构造一个新的 DatabaseReference
。 DatabaseReference
对象非常轻量,因此创建新对象的开销很小。
如果这些方法在针对性上优于另一种,并且两者都适用于相似的情况,那么使用哪种方法取决于个人喜好。
我的 activity 中有 3 个按钮,我正在寻找一种通过 onclick 将数据库引用传递给新的 activity 的方法,因此它会根据按下的按钮从 Firebase 数据库加载内容。
像这样:
- 从 Activity 1 按下按钮 1 > 开始 Activity 2 & 从 Persons Reference > Person 1 加载数据
- 从 Activity 1 按下按钮 2 > 开始 Activity 2 & 从 Persons Reference > Person 2 加载数据
- 从 Activity 1 按下按钮 3 > 开始 Activity 2 & 从 Persons Reference > Person 3 加载数据
我认为我应该使用 putExtra / getExtra 来传递 Intent。但是我如何将它附加到 new activity 中 Firebase 数据库中的特定节点?
我通常会传递 所选人员的 key/ID,或者 节点 的路径calling toString()
on the DatabaseReference
的数据库。根据此信息,您可以为新 activity 中的相同数据构造一个新的 DatabaseReference
。 DatabaseReference
对象非常轻量,因此创建新对象的开销很小。
如果这些方法在针对性上优于另一种,并且两者都适用于相似的情况,那么使用哪种方法取决于个人喜好。