我正在努力让自己熟悉使用他们的文档阅读和编写Firebase的基础知识。无论如何,他们已经有了关于递增数值的教程,并且我将它绑定到一个按钮来执行此操作:
public void onClick(View view) {
Firebase upvotesRef = ref.child("https://docs-examples.firebaseio.com/android/saving-data/fireblog/posts/-JRHTHaIs-jNPLXOQivY/upvotes");
upvotesRef.runTransaction(new Transaction.Handler() {
@Override
public Transaction.Result doTransaction(MutableData currentData) {
if(currentData.getValue() == null) {
currentData.setValue(1);
} else {
currentData.setValue((Long) currentData.getValue() + 1);
}
return Transaction.success(currentData);
}
@Override
public void onComplete(DatabaseError databaseError, boolean b, DataSnapshot dataSnapshot) {
}
});
}
这与我的布局中的一个按钮绑定,代码与教程中的代码完全相同,但是这段代码在编译之前给出了以下错误:
runTransaction (com.firebase.client.Transaction.Handler) in Firebase cannot be applied to (anonymous com.google.firebase.database.Transaction.Handler)
通常情况下,我会解决这个问题,但令人惊讶的是,似乎没有人遇到类似的问题,至少不是我能找到的问题,所以我想知道这里是否有人知道问题是什么?
答案 0 :(得分:1)
如果其他人发现自己处于类似情况,问题是我从com.firebase.client
而不是com.google.firebase.database