我想让用户访问我的颤栗应用程序中的防火墙数据,只有当他们在线时。
我希望消防局的数据不能存储在高速缓存内存中,所以用户只能在联机时才能获得数据。
发布于 2022-11-23 08:33:13
听起来你的问题只是问如何禁用任何持久性,以确认您的应用程序只接收最新的数据。您可以使用Firebase设置来配置它。下面是文档中的代码片段。
// Apple and Android
db.settings = const Settings(persistenceEnabled: true);
// Web
await db
.enablePersistence(const PersistenceSettings(synchronizeTabs: true));更多信息可以在离线访问数据文档上找到。
发布于 2022-11-23 07:57:49
您可以使用connectivity_plus: ^3.0.2包检查互联网,您可以使用您的逻辑连接。
发布于 2022-11-23 08:26:06
您可以使用加:^3.0.2包检查internet,以便在没有internet的情况下可以禁用删除按钮。
您的代码将如下所示:
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);
}
}}
然后打开您的小部件,编写以下条件
if(_connectionStatus.toString() != "ConnectivityResult.none") 现在,如果没有internet连接,小部件就不会出现。
https://stackoverflow.com/questions/74543125
复制相似问题