Ich habe ein FireBase-Back-End, das einen Zeitstempel wie folgt hat ... es gibt viele dieser Knoten, die Objekte sind, die verschoben wurden.Abfrage von Firebase basierend auf ServerValue.TIMESTAMP
jeder Knoten einen Zeitstempel mit ServerValue.TIMESTAMP eingestellt.
in Datenmodellklasse Einstellung Serverzeit
private HashMap<String, Object> timestampCreated;
//set time stamp in constructor when new obj is created
public DataModel(...){
// TIME STAMP
HashMap<String, Object> timestampCreatedObj = new HashMap<String, Object>();
timestampCreatedObj.put("date", ServerValue.TIMESTAMP);
this.timestampCreated = timestampCreatedObj;
}
//getting timestamp
public HashMap<String, Object> getTimestampCreated(){
return timestampCreated;
}
@Exclude
public long getTimestampCreatedLong(){
return (long)timestampCreated.get("date");
}
Die vor allem arbeitet zum Einsetzen in DB in Ordnung und ich kann die Zeit abgerufen werden.
In einer anderen Klasse möchte ich eine Abfrage auf einem FirebaseListAdapter setzen Einstellung der Abfrage lässt sagen für die Anzeige von Elementen in den letzten 5 Tagen.
long daysInpast= new Date().getTime() - TimeUnit.MILLISECONDS.convert(5, TimeUnit.DAYS);
Dann stelle ich Abfrage
Query queryDays= mDatabaseQuery.child("timestampCreated").orderByChild("date").endAt(daysInpast);
final FirebaseListAdapter<myData> adapterQuery = new FirebaseListAdapter<myData>
(getActivity(), myData.class, R.layout.list_item, queryDays) {//do stuff}
Seine meine Abfrage ich bin nicht sicher, meine Liste leer zurückkehrt, wenn ich meine FirebaseListAdapter nur ohne den DB-Referenz meiner Liste vorbei Abfrage verwenden erfüllt wie erwartet. Ich vermute, wie die Daten angelegt sind? er Tatsache, dass meine Zeit tippen ist in einem Unterknoten ist das ein Problem?
Ich habe gerade
versucht mitQuery queryDays= mDatabaseQuery.orderByChild("date").endAt(daysInpast);
auch, aber keine vail
jede Hilfe
geschätzt
danke, das ist, was ich brauche, arbeiten jetzt, Entschuldigungen zu Bild, werde nach JSON in der Zukunft. – RoRo88