【问题标题】:How I can get current active users from Firebase with Flutter?如何使用 Flutter 从 Firebase 获取当前活跃用户?
【发布时间】:2021-07-16 08:58:57
【问题描述】:

我正在使用 Flutter 和 Firebase 制作应用程序。我需要从 firebase 获得活跃用户。 我正在尝试通过在名称为 isActive = false 的 Firebase 集合中创建一个布尔字段并在该函数中启动一个名称为 _checkInternetConnectivity(); 的函数,我在该函数中设置了 Internet 连接Firebase 中 isActive = true 的可用更新值,当没有互联网连接更新值 isActive = false 到目前为止,我的代码运行良好,但问题是当互联网连接可用它设置 isActive = true 的值,但是当没有互联网连接时,它无法更新值 isActive = false
代码在这里:

void initState() {
    super.initState();
    _checkInternetConnectivity();
}

_checkInternetConnectivity() async {
    var connectivityResult = await (Connectivity().checkConnectivity());
    if (connectivityResult == ConnectivityResult.mobile) {
      FirebaseFirestore.instance.collection('Profile').doc(user.uid).update({
        'isActive': true,
      });
      print('done mobile');
    } else if (connectivityResult == ConnectivityResult.wifi) {
      _addData.doc(user.uid).update({
        'isActive': true,
      });
      print('done wifi');
    } else if (connectivityResult == ConnectivityResult.none) {
      FirebaseFirestore.instance.collection('Profile').doc(user.uid).update({
        'isActive': false,
      });
      print('done none');
    }
  }
}

那么,我该如何改进此代码或任何其他可以通过 Flutter 从 Firebase 获得活跃用户的方式。

问候

【问题讨论】:

    标签: android flutter android-studio dart google-cloud-firestore


    【解决方案1】:

    断开连接

    OnDisconnect 类用于管理在此客户端断开连接时将在服务器上运行的操作。它可用于根据客户端的连接状态添加或删除数据。它在寻找“存在”功能的应用程序中非常有用。

    此类的实例是通过在 Firebase 数据库引用上调用 onDisconnect 获得的。

    您的解决方案是here

    【讨论】:

      猜你喜欢
      • 2020-02-04
      • 2019-05-28
      • 2021-11-12
      • 2021-03-05
      • 2021-11-23
      • 2018-01-10
      • 2017-05-20
      • 1970-01-01
      • 2012-02-04
      相关资源
      最近更新 更多