addChildEventListener在服务中,需要侦听器状态

时间:2016-06-27 13:43:57

标签: android firebase firebase-realtime-database

我有自己的服务,在firebase数据库中查找数据更改(通过child events)。

此服务在应用启动时启动:

Intent i= new Intent(this, DatabaseChangeHandler.class);
this.startService(i);

DatabaseChangeHandler.classonChild...听众:

@Override
protected void onHandleIntent(Intent workIntent) {
    mDatabase = FirebaseDatabase.getInstance().getReference();
    DatabaseReference mDataset1 = mDatabase.child("dataset1");
    mDataset1.addChildEventListener(dataset1Listener);
    DatabaseReference mDataset2 = mDatabase.child("dataset2");
    mDataset2.addChildEventListener(dataset2Listener);
}

(它们实际上并未命名为dataset1dataset2

但是因为我需要在startactivity之后的活动中的数据,我需要像

这样的东西
if(dataIsRefreshed) {
    goToMainActivity();
} else {
    wait for dataIsRefreshed()
}

我知道,我应该将goToMainActivity()放在onChildAddedonChildChanged等内部,但是因为我在服务中运行,我不确定,我是怎么做的可以获得听众的状态。

0 个答案:

没有答案