Пожарная связь отключена
После отключения интернета у слушателя срабатывает "нет интернета". После возобновления соединения также работает функция "нет интернета". Успех не работает, только после перезапуска приложения. Как исправить?
1 ответ
Согласно официальной документации по использованию транзакций в Cloud Firestore:
Транзакции не будут выполнены, когда клиент находится в автономном режиме.
Другими словами, вы не можете использовать транзакции, когда вы находитесь в автономном режиме.
Также имейте в виду, что в случае потери сетевого подключения (нет сетевого подключения на пользовательском устройстве), ни onSuccess()
ни onFailure()
методы запускаются. Такое поведение имеет смысл, поскольку задача считается выполненной только тогда, когда данные были зафиксированы (или отклонены) серверами Firebase.
Если вы хотите проверить, получаете ли вы данные с сервера или из кэша, используйте fromCache
собственность на SnapshotMetadata
в вашем событии снимка. Если fromCache
является true
данные поступили из кэша и могут быть неполными. Если fromCache
является false
, данные полны и актуальны с последними обновлениями на сервере.