【问题标题】:Flutter: How to check for internet connection? [duplicate]Flutter:如何检查互联网连接? [复制]
【发布时间】:2019-07-27 17:46:23
【问题描述】:

我想为网络实用程序创建单独的类。网络实用程序将具有 isNetworkAvailable() 之类的方法,我可以在每次请求之前使用它。

【问题讨论】:

    标签: flutter


    【解决方案1】:

    使用

    dependencies:
      connectivity: ^0.4.2
    

    然后

      import 'package:connectivity/connectivity.dart';
    
      Future<bool> check() async {
        var connectivityResult = await (Connectivity().checkConnectivity());
        if (connectivityResult == ConnectivityResult.mobile) {
          return true;
        } else if (connectivityResult == ConnectivityResult.wifi) {
          return true;
        }
        return false;
      }
    

    然后检查

    check().then((intenet) {
          if (intenet != null && intenet) {
            // Internet Present Case
          }
          // No-Internet Case
        });
    

    更多相关答案check this post

    【讨论】:

    • var 结果 = await Connectivity().checkConnectivity();给我类似“ConnectivityService:用户 11177 和当前进程都没有 android.permission.ACCESS_NETWORK_STATE.,null)”之类的错误有人可以帮忙吗?
    • 有了这个包,你只检查应用程序是否连接到设备(蜂窝或wifi)?使用另一个名为 data_connection_checker 的包:[pub.dev/packages/data_connection_checker#-example-tab-]
    【解决方案2】:

    您可以查看此包: Flutter Connectivity

    另外,请查看this question 了解更多详情。

    但请注意,在 Android 上,这并不能保证连接到 Internet。例如,该应用可能具有 wifi 访问权限,但它可能是无法访问互联网的 WiFi。

    【讨论】:

      猜你喜欢
      • 2020-04-17
      • 2022-11-05
      • 2016-04-03
      • 2023-01-13
      • 1970-01-01
      • 2011-01-20
      • 1970-01-01
      • 2013-02-02
      • 1970-01-01
      相关资源
      最近更新 更多