webviewScaffold с подключением к Интернету в режиме flutter

#android #flutter #dart

#Android #flutter #dart

Вопрос:

Я пробую этот код в webview и работает после отключения Интернета и отображения диалогового окна, но когда я использую webviewScaffold, он не работает. как я могу проверить подключение к Интернету и отобразить диалоговое окно после отключения Интернета.

эта функция работает в webview, проверьте метод internet()

   Future<bool> checkinternet() async {
    try {
      final result = await InternetAddress.lookup('google.com');
      if (result.isNotEmpty amp;amp; result[0].rawAddress.isNotEmpty) {
        return Future.value(true);
      }
    } on SocketException catch (_) {
      return Future.value(false);
    }
  }
  

Код initState()

   @override
  void initState() {
    super.initState();
    connectivitySubscription = Connectivity()
        .onConnectivityChanged
        .listen((ConnectivityResult connresult) {
      if (connresult == ConnectivityResult.none) {
        dialogshown = true;
        showDialog(
          context: context,
          barrierDismissible: false,
          child: AlertDialog(
            title: Text(
              "Error",
            ),
            content: Text(
              "No Data Connection Available.",
            ),
            actions: <Widget>[
              FlatButton(
                onPressed: () {
                  Navigator.push(
                    context,
                    MaterialPageRoute(
                        builder: (context) => internet_connection()),
                  );
                },
                child: Text("Exit."),
              ),
            ],
          ),
        );
      } else if (connresult == ConnectivityResult.mobile ||
          connresult == ConnectivityResult.wifi) {
        imageui();
        /*if (_previousResult == ConnectivityResult.none) {
          checkinternet().then((result) {
            if (result == true) {
              if (dialogshown == true) {
                dialogshown = false;
                Navigator.pop(context);
              }
            }
          });*/
      }

      _previousResult = connresu<
    });
  }