【发布时间】:2017-05-08 23:40:57
【问题描述】:
我有一个节点,我每三天刷新一次,其中包含我的 firebase 实时数据库中的一些键值对。我希望我的应用程序仅在我在此节点中进行更改时(大约每三天一次)才能获取新值。我目前使用此代码进行测试:
mFirebaseDatabase.getReference().child("test").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Long tsLong = System.currentTimeMillis();
Log.d("thatsdatasnapshot", "thatsdatasnapshot = " + tsLong.toString());
Log.d("thatsdatasnapshot", "thatsdatasnapshot = " + dataSnapshot.toString());
}
我的问题是,即使我没有更改节点中的任何内容(例如每次启动应用程序时),我在此侦听器中的日志也会经常打印。所以我猜我节点的所有值都是“经常”下载的,不仅仅是当我在我的数据库中进行更改时。我错了吗 ?仅在发生更改时如何下载我的节点的值?我认为这是 addValueEventListener() 应该做的,但当我看到我的日志打印得如此频繁时,我有疑问。
谢谢,
亚历克斯
【问题讨论】:
标签: android firebase-realtime-database