首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使火药库数据只在线?

如何使火药库数据只在线?
EN

Stack Overflow用户
提问于 2022-11-23 07:29:40
回答 3查看 28关注 0票数 1

我想让用户访问我的颤栗应用程序中的防火墙数据,只有当他们在线时。

我希望消防局的数据不能存储在高速缓存内存中,所以用户只能在联机时才能获得数据。

EN

回答 3

Stack Overflow用户

发布于 2022-11-23 08:33:13

听起来你的问题只是问如何禁用任何持久性,以确认您的应用程序只接收最新的数据。您可以使用Firebase设置来配置它。下面是文档中的代码片段。

代码语言:javascript
复制
// Apple and Android
db.settings = const Settings(persistenceEnabled: true);

// Web
await db
    .enablePersistence(const PersistenceSettings(synchronizeTabs: true));

更多信息可以在离线访问数据文档上找到。

票数 2
EN

Stack Overflow用户

发布于 2022-11-23 07:57:49

您可以使用connectivity_plus: ^3.0.2包检查互联网,您可以使用您的逻辑连接。

票数 1
EN

Stack Overflow用户

发布于 2022-11-23 08:26:06

您可以使用加:^3.0.2包检查internet,以便在没有internet的情况下可以禁用删除按钮。

您的代码将如下所示:

代码语言:javascript
复制
YourAppState{
    ConnectivityResult _connectionStatus = ConnectivityResult.none;
    final Connectivity _connectivity = Connectivity();
    late StreamSubscription<ConnectivityResult> _connectivitySubscription;

  @override
   void initState() {
   super.initState();
   _connectivitySubscription_connectivity.onConnectivityChanged.listen(_updateConnectionStatus);
  }

   Future<void> _updateConnectionStatus(ConnectivityResult result) async {
     setState(() {
       _connectionStatus = result;
     });
      if (_connectionStatus.toString() == "ConnectivityResult.none") {
         navigatorKey.currentState!.popUntil((route) => route.isFirst);
        }
    }

}

然后打开您的小部件,编写以下条件

代码语言:javascript
复制
if(_connectionStatus.toString() != "ConnectivityResult.none") 

现在,如果没有internet连接,小部件就不会出现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74543125

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档