如何从firebase java获取父值
我目前是Firebase的新手 我在-->>用户->回答->键中输入了一个键 然后我用了这个:如何从firebase java获取父值,java,firebase,Java,Firebase,我目前是Firebase的新手 我在-->>用户->回答->键中输入了一个键 然后我用了这个: Firebase re = New Firebase(blabla..user->answer); refLoadId_Question_Question.addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(DataSnapsho
Firebase re = New Firebase(blabla..user->answer);
refLoadId_Question_Question.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Map<String, Object> newPost = (Map<String, Object>) dataSnapshot.getValue();
System.out.println("Id_question1: " + dataSnapshot.getValue());
System.out.println("Id_question1: " + dataSnapshot.getChildren().toString());
list_id_question.add(dataSnapshot.getKey());
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
Firebase re=newfirebase(blabla..user->answer);
refLoadId\u Question\u Question.addListenerForSingleValueEvent(新值EventListener()){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
Map newPost=(Map)dataSnapshot.getValue();
System.out.println(“Id_question1:+dataSnapshot.getValue());
System.out.println(“Id_question1:+dataSnapshot.getChildren().toString());
list_id_question.add(dataSnapshot.getKey());
}
@凌驾
取消后的公共无效(FirebaseError FirebaseError){
}
});
我在dataSnapsho.getValue()中收到:Id_question1:{-Ja3RTtq5DMGIdVF9 pC=true}
我的问题是,在java中是否可以从对象类型中获取键值?我要获取此值:-Ja3RTtq5DMGIdVF9 pC
有人能帮忙吗?
谢谢..您需要反复查看子项:
for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
System.out.println(childSnapshot.getKey());
}
或者,您也可以倾听儿童,而不是整个回答对象:
refLoadId_Question_Question.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot childSnapshot) {
System.out.println(childSnapshot.getKey());
}
}
当您开始处理数据同步时,后者将变得更简单,而不仅仅是下拉初始数据
假设您有两个人在使用您的应用程序:
最初,第一个用户将下载问题和两个答案。然后,当第二个用户提供第三个答案时,您的初始代码将(可能)重新下载所有三个答案。第二个示例将仅针对新答案调用。我当前使用此代码获取ID 但是如果身份证问题不止一个,我就没有试过
if (dataSnapshot.getValue() != null) {
Map<String, Object> newPost = (Map<String, Object>) dataSnapshot.getValue();
String ID_Question = newPost.keySet().toString().replace("[", "");
ID_Question = ID_Question.replace("]", "");
System.out.println("Id_question1: " + ID_Question);
list_id_question.add(ID_Question);
}
if(dataSnapshot.getValue()!=null){
Map newPost=(Map)dataSnapshot.getValue();
字符串ID_Question=newPost.keySet().toString().replace(“[”,”);
ID_-Question=ID_-Question.replace(“]”,“”);
System.out.println(“Id问题1:+Id问题”);
列出id问题。添加(id问题);
}
谢谢您的快速回答,我将尝试一下,但现在我将首先从我的应用程序中查找bug。我很快会告诉你的。