2016-06-01 2 views
7

FirebaseDatabase предлагает два способа взять клиента в автономном режиме:Почему два метода для клиента FirebaseDatabase в автономном режиме?

DatabaseReference.goOffline()

вручную отключить клиента базы данных Firebase с сервера и отключения автоматического повторного включения. Примечание. Вызов этого метода будет влиять на все соединения базы данных Firebase .

FirebaseDatabase.goOffline()

Завершает вниз наше подключение к серверным базам данным Firebase до goOnline() называется.

Вызов FirebaseDatabase.getInstance().goOffline() производит ожидаемые результаты:

  1. ValueEventListener для ".info/Connected" пожаров для отключения
  2. OnDisconnect действие выполняет
  3. ValueEventListener с для удаленных изменений не срабатывать , для местных изменений
  4. CompletionListener s не срабатывает

Вызов DatabaseReference.goOffline(), похоже, не имеет никакого эффекта. Ничего из перечисленного выше не происходит. Разрушено? Если нет, то как он отличается от другого goOffline()?

+0

Я могу подтвердить то же поведение. Кажется, работает только FirebaseDatabase.getInstance(). GoOffline(). –

+0

@NizamMohideen: В моем оригинальном посте я должен был указать версию библиотеки, на которую я тестировал - теперь я не помню. Я не повторил проверку с использованием 9.2.1. Какую версию вы использовали? –

+0

Это поведение наблюдается на 9.0.2 –

ответ

2

Это был надзор в выпуске 9.x. FirebaseDatabase.getInstance().goOffline()/goOnline() - правильные способы использования, и DatabaseReference.goOffline()/goOnline() действительно сломаны и будут удалены в будущем выпуске. Извините за беспорядок!

Смежные вопросы