2017-02-27 23 views
2

後刪除文件說,SingleValueEvent的監聽器只運行一次。
那麼在使用它之後不需要刪除監聽器嗎?我應該在使用「addListenerForSingleValueEvent」

final Query query = getChatsRef().limitToLast(20); 
query.addListenerForSingleValueEvent(new ValueEventListener() { 

    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     query.removeEventListener(this);   
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) { 
     query.removeEventListener(this); 
    } 
}); 

回答

10

否。不需要像在代碼段中那樣刪除監聽器。

您可能想要刪除once偵聽器的唯一原因是偵聽器還未被觸發。我唯一可以看到發生的情況是當您未連接到Firebase服務器,並且您正在檢查的位置未被緩存。這應該是相當少的情況。

+0

感謝您的最快答案! – wonsuc

+1

在addListenerForSingleValueEvent下的參考文檔中包含這將會很棒。謝謝。 – GregM