簡體   English   中英

Firebase監聽器在Java(Android)中被阻止

[英]Firebase listener is blocked in Java(Android)

我有一個簡單的onChildAdded偵聽器集,但它似乎不起作用:

listRef.addChildEventListener(new ChildEventListener() {
    @Override
    public void onChildAdded(DataSnapshot snapshot,
            String previousChildName) {

        Log.d("DEBUG","A child has been added!");
        // Do stuff...

    }
    // Other unimplemented methods for ChildEventListener here...
});

while(true);

我正在將孩子添加到listRef中,但是什么也沒有發生。

while(true)行是為了演示我的問題,這是處理程序僅在其他所有操作完成后才能夠觸發! 在這種情況下,它永遠不會這樣做。 當我刪除此行時,它起作用。

我認為這是設計使然。 有什么辦法可以使它們在這些情況下起作用,而不管發生了什么事?

謝謝

while(true)將永久阻止線程接收事件,因為Android客戶端使用主線程發布事件。

可以設置其他線程以通過Config.setEventTarget()接收事件。

在這種情況下,EventTarget傳遞了Runnable的實例,該實例負責運行以接收事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM