Я написал приложение для Android, которое использует анонимную аутентификацию firebase и записывает в базу данных firebase из службы переднего плана. Я использую onDisconnect().removeValue()
для очистки данных, созданных моим приложением, когда веб-камера закрыта. Когда пользователь активно взаимодействует с приложением, вызов onDisconnect()
вызывает триггеры, как ожидалось (это означает, что мои правила безопасности в порядке). Однако, когда обслуживание переднего плана остается включенным в течение длительного периода времени (например, на ночь, экран выключается и т. Д.), Вызов onDisconnect()
никогда не запускается снова. Приложение продолжает работать после пробуждения (связь с сервером Firebase и т. Д.), Но когда приходит время закрыть приложение (после периода простоя), кажется, что вызов onDisconnect()
был каким-то образом потерян.Как правильно использовать Firebase из службы переднего плана в Android
Я читал, что анонимные сеансы аутентификации спокойно обновляются с помощью SDK firebase каждый час. Возможно ли, что это происходит в активности (и убивается операционной системой, но сохраняется поддержка переднего плана), поэтому сервер отбрасывает обратный вызов на onDisconnect
? Если это так, можно ли сохранить эту функциональность в службе переднего плана?
Спасибо @Aubtin. Хорошо знать, что это не проблема с моим кодом, и что команда Firebase знает об этой проблеме. –