我创建了一个数据库来存储我的日志,并在过去1小时内实时更新我的日志条目
我尝试在firebase查询中添加一个实时监听器。两次尝试都触发一次(启动时),但在应用程序运行时添加新日志时没有触发
这是我的代码
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("logs");
long MillisInHour = 60*60*1000;//one hour
这是查询
Query query = myRef.orderByChild("timeStamp").startAt(System.currentTimeMillis()).endAt(System.currentTimeMillis() - MillisInHour);
我尝试过(尝试#1)
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
另外(尝试#2)
query.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
答案 0 :(得分:0)
找到它。我应该用
Query query = myRef.orderByChild("timeStamp").startAt(System.currentTimeMillis() - MillisInHour)
代替。