我在android studio中使用Firebase,我想做一个注册和登录项目。我可以将数据保存到Firebase,但我无法检索数据。
在每个例子中,它都是实时的 - 就像我们首先设置一个监听器并保存数据 - 但我的只是存储并稍后检索。
有没有办法只检索数据? (我希望你能理解:()
public void onLogIn(View v){
reference2 = fbData.getReference(loginId.getText().toString());
reference2.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String gotPw = dataSnapshot.getValue(String.class);
if(gotPw == loginPw.getText().toString()){
Log.d("TEST","DONE");
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.d("TEST","ERROR");
}
});
}
此代码甚至不调用onDataChange方法。
答案 0 :(得分:1)
在java ==运算符比较字符串中,即使字符串值可能相同,也不总是返回true。
尝试做:
if(gotPw.equals(loginPw.getText().toString())){
Log.d("TEST","DONE");
}