【问题标题】:How to pop dialog in Flutter if internet connection goes off suddenly? [duplicate]如果互联网连接突然断开,如何在 Flutter 中弹出对话框? [复制]
【发布时间】:2021-12-22 22:29:05
【问题描述】:

我想要实现的是这样的,

showDialog();
await firebaseFunction();
await apiFunction();
hideDialog();

如果互联网连接打开,这将正常工作。但是,如果互联网连接突然关闭,我该怎么办?如果发生这种情况,应用程序将卡在未来的功能上,应用程序的屏幕将卡在对话框上。 我想在互联网连接断开时弹出对话框。 是否有依赖项可以帮助我做到这一点?

【问题讨论】:

  • @Boaz 不,因为我需要在处理时而不是在处理之前检查互联网连接。 :)
  • 链接的帖子包括所有场景的解决方案。事实上,它还包括这篇文章的公认答案。考虑将此问题作为重复问题关闭。

标签: firebase flutter flutter-dependencies flutter-web


【解决方案1】:

试试connectivity_plus,听蜂窝与WiFi连接,如果没有,弹出对话框:

import 'package:connectivity_plus/connectivity_plus.dart';

@override
initState() {
  super.initState();

  subscription = Connectivity().onConnectivityChanged.listen((ConnectivityResult result) {
    if (result == ConnectivityResult.none) {
    hideDailog();
    showToast("No internet connection");
  }
  });
}

// Be sure to cancel subscription after you are done
@override
dispose() {
  super.dispose();

  subscription.cancel();
}

【讨论】:

    猜你喜欢
    • 2019-03-27
    • 2014-03-28
    • 2019-07-27
    • 2022-11-05
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多