保存交易数据

Saving Transactional Data

我们可以在 run transaction 的帮助下在 Android Firebase 项目中添加一个新子项吗?

Can we add a new child with the help of run transactions in an Android Firebase project?

当然可以。正如 docs 所述,如果我们尝试使用事务增加的值在我们指向的位置不存在,我们可以简单地设置它:

Integer currentValue = mutableData.getValue(Integer.class);
if (currentValue == null) {
  mutableData.setValue(1);
} else {
  mutableData.setValue(currentValue + 1);
}

否则,我们读取值并增加它。

如果你不需要读取值而只想增加它,你可以简单地使用:

ref.child("propertyName").setValue(ServerValue.increment(1));