我正在尝试使用runTransaction()Firebase数据库,但无法正常工作。这是我正在使用的代码。
numQuestionRef.runTransaction(new Transaction.Handler() {
@Override
public Transaction.Result doTransaction(MutableData mutableData) {
String numQuestions = (String) mutableData.getValue();
long value = Long.parseLong(numQuestions, 16);
value++;
String incHex = Long.toHexString(value);
mutableData.setValue(incHex);
return Transaction.success(mutableData);
}
@Override
public void onComplete(FirebaseError firebaseError, boolean b, DataSnapshot dataSnapshot) {
}
});
当我在应用程序中按一个按钮时,此代码被激活。自启动应用程序以来第一次按下按钮时,我的数据库不变。但是,自启动应用程序以来,当我第二次按下按钮时,它将更新为下一个数字。我不明白这是什么问题,或者为什么只在第二次按下按钮时才这样做。
慕娘9325324
相关分类