Реализация статуса онлайн / офлайн в реальном времени с флаттером и пожарной базой - PullRequest
0 голосов
/ 21 марта 2020

Хи, как лучше всего показать приложение, если пользователь онлайн или офлайн?

Frontend -> Flutter

Backend -> Firestore Cloud и Firebase Auth.

У меня есть коллекция пользователей в firestore, которая содержит документы. Каждый документ является пользователем и содержит поле «статус». Во флаттере я могу обновлять это поле каждый раз, когда пользователь входит или выходит из системы, но если вы закроете приложение, оно не будет обновлено.

1 Ответ

0 голосов
/ 21 марта 2020

Вы можете расширить свой класс StatefulWidget с помощью WidgetsBindingObserver, как

class _HomePageState extends State<HomePage>
    with WidgetsBindingObserver

и initState, метод add WidgetsBinding.instance.addObserver(this);.

@override
  void initState() {
    super.initState();
    WidgetsBinding.instance.addObserver(this);
  }

Позже оверид didChangeAppLifecycleState метод

@override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    if (state == AppLifecycleState.resumed)
      //TODO: set status to online here in firestore
    else
      //TODO: set status to offline here in firestore
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...