Проблема с Firebase — нет ответа от базы данных в реальном времени на iPod с iOS 8.3

Я разрабатываю приложение для iOS, написанное на Swift 3.0 с использованием Xcode 8.2, которое поддерживает iOS 8.0 и выше. Данные приложения хранятся в Firebase. Я хочу прослушивать изменения подключения к базе данных (приложение подключено к Firebase или нет). Я использую функцию FIRDatabaseReference:

func наблюдать(_ eventType: FIRDataEventType, с блоком: @escaping (FIRDataSnapshot) -> Swift.Void, withCancel cancelBlock: ((Error) -> Swift.Void)? = nil) -> UInt

для наблюдения за изменениями, но это событие всегда возвращает false (значение 0). В настоящее время (в консоли Firebase) запросы, связанные с разделом Authentication, работают правильно, а запросы, связанные с Realtime Database, — нет. Это происходит только на iPod 5.1 (5) с iOS 8.3.

Я протестировал свое приложение на

  • iPad 2 с iOS 8.4.1
  • iPod 5.1 (5) с iOS 9.3.5
  • iPhone 6 с iOS 10.0.1

слишком. Но на этих устройствах это работало хорошо.

Я делаю что-то неправильно? Есть ли проблема, связанная с версией iOS и Firebase SDK?

Благодарю вас!


person anitteb    schedule 20.12.2016    source источник


Ответы (1)


РЕШЕНО

Я оставил эту проблему немного позади, и через некоторое время она снова появилась на другом устройстве.

Я не уверен, решит ли это все подобные проблемы, но я выяснил, что срок действия моего токена истек, и я не получаю НЕТ ответа от базы данных . Какая проблема была вызвана сменой пароля того же пользователя на другом устройстве.

День 1. Я вошел в систему с помощью учетной записи на двух разных устройствах. Я сменил пароль на одном из них.

День 2. Я попытался загрузить некоторые данные из раздела Realtime Database с помощью другого устройства, но не получил НЕТ ответа, что очень раздражало.

Через 8 часов журналы Firebase Analytics на консоли Xcode, наконец, помогли мне разобраться в проблеме. Я вышел из проблемного устройства, а затем снова вошел в систему.

Мне было интересно, почему я не могу получить какой-то ответ «token_expired» с сервера или, может быть, почему я не могу выйти из системы с других устройств.

person anitteb    schedule 01.02.2017