【发布时间】:2018-10-15 12:18:21
【问题描述】:
我正在尝试制作一个用户存储他的数据的应用程序。我已经使用用户共享首选项来保存用户登录详细信息,但仍然出于安全目的,我做了一个活动(验证密码活动),要求用户密码允许访问数据。现在我可以保存、获取和删除数据了。但是在我的验证密码活动中,我只想获取存储密码的特定键和值。我不想在验证密码活动中获取完整数据。
以下是我用来将密码保存到数据库的代码:-
databaseReference.child(uniqueID).setValue(passcode);
下面是我试图只获取密码的代码:-
dbreference.child(uniqueID).orderByChild("passcode").equalTo(pass).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()){
Toast.makeText(getApplicationContext(), "Data exist", Toast.LENGTH_LONG).show();
}else{
Toast.makeText(getApplicationContext(), "Data doesn't exist", Toast.LENGTH_LONG).show();
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
这里uniqueID 是"abhishek88666kumar",pass 是用于getText() 的变量。
这是我的 Firebase 数据库的屏幕截图:-
这是验证密码活动截图:-
请查看数据库截图和验证密码活动截图。
议程:
getText() 从 textView 内部活动。
从 firebase 实时数据库中获取值(仅适用于当前用户。在我们的例子中为“abhishek88666kumar”)。
比较 1 和 2 是否相同。 (如果相同则重定向到 MainActivity 否则显示错误。)
请告诉我我做错了什么。
【问题讨论】:
标签: android firebase firebase-realtime-database