我已經編寫了一個使用firebase匿名身份驗證並從前臺服務寫入Firebase數據庫的Android應用程序。我正在使用onDisconnect().removeValue()
來清理由我的應用程序在websocket關閉時創建的數據。當用戶積極參與應用程序時,將按照預期觸發onDisconnect()
調用(意味着我的安全規則正常)。但是,如果前臺服務長時間運行(例如隔夜,屏幕關閉等),則不會再次觸發該呼叫。該應用程序在喚醒後繼續工作(與Firebase服務器等進行通信),但是當它關閉應用程序(經過一段空閒時間後)時,看起來onDisconnect()
呼叫已經以某種方式丟失。如何從Android中的前臺服務正確使用Firebase
我讀過匿名認證會話每小時被安全地刷新的firebase SDK。是否有可能在活動中發生這種情況(並且被操作系統殺死,但保持前臺服務活着),因此導致服務器放棄回撥到onDisconnect
?如果是這樣,這個功能可以保存在前臺服務中嗎?
謝謝@Aubtin。很高興知道它對我的代碼沒有任何問題,並且Firebase團隊知道這個問題。 –