【发布时间】:2017-03-28 17:44:11
【问题描述】:
首先,我对 firebase 数据库非常陌生。我正在研究如何从 firebase 检索当前的 UID(即当前登录的)并将其与整个 oncreate 中的值一起插入到 firebase 的子项中。
我正在尝试推送我当前的 UID,它对 Firebase 的价值。我无法将它推到火力基地。这是我的火力基地结构:
(例如,UID Fo2SfEfryWEjmxr4yIQwM5LQQx2and value '720'in fire base)
尝试后,我仍然无法获取以下代码来检索 UID。我在使用(new ValueEventListener() 以及这条线路时遇到了问题。
Map<String, Queue> data = postSnapshot.getValue(new GenericTypeIndicator<Map<String, Queue>>() {});
这是我的 onCreate 供参考
mRef = new Firebase("https://sunwayfinancequeue.firebaseio.com/");
mRef.child("UserQueue");
mRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
for (DataSnapshot postSnapshot : snapshot.getChildren()) {
Queue queue = postSnapshot.getValue(Queue.class);
System.out.println(Queue.getTotalqueue() + " - " + Queue.getServingqueue());
Map<String, Queue> data = postSnapshot.getValue(new GenericTypeIndicator<Map<String, Queue>>() {});
Map.Entry<String, Queue> entry = data.entrySet().iterator().next();
String uid = entry.getKey();
Log.d("Firebase UID ", uid);
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
System.out.println("The read failed: " + firebaseError.getMessage());
}
});
这是我的构造函数:
public class Queue {
private static double servingqueue;
private static double totalqueue;
private static String uid;
public Queue(Double servingqueue, Double totalqueue) {
Queue.servingqueue = servingqueue;
Queue.totalqueue = totalqueue;
}
public static double getServingqueue() {
return servingqueue;
}
public static void setServingqueue(double servingqueue) {
Queue.servingqueue = servingqueue;
}
public static double getTotalqueue() {
return totalqueue;
}
public static void setTotalqueue(double totalqueue) {
Queue.totalqueue = totalqueue;
}
public static String getUid() {
return uid;
}
public static void setUid(String uid) {
Queue.uid = uid;
}
}
【问题讨论】:
标签: java android firebase firebase-realtime-database