flutter webview 无法加载网页错误提示:ERR_NAME_NOT_RESOLVED 解决方法

问题:

之前用flutter写了一个app,里面包括一个网页显示页面,当时测试的时候一切正常。但是今天重新运行发现app的其他功能正常但是无法加载网页,错误提示如下:

网页无法打开
位于 https://www.baidu.com/ 的网页无法加载,因为:

net::ERR_NAME_NOT_RESOLVED

解决方法:(重启模拟器,检查模拟器和电脑的网络是否正常)

    我试了好多方法,都无法加载网页,后来我重启了一下模拟器,一切都正常了。后来发现提示上面的错误的原因是模拟器的网络链接有问题,虽然模拟器的网络是开着单还是一样。只有重启后才能恢复正常。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要获取 `webview_flutter` 加载完成后网页的高度,可以使用 `WebViewController` 和 `JavascriptChannel`。 首先,创建一个 `JavascriptChannel`,用于将网页高度传递给 Flutter 端: ```dart class HeightChannel { final Function(double) onReceiveHeight; HeightChannel(this.onReceiveHeight); void receiveHeight(String height) { double parsedHeight = double.tryParse(height); if (parsedHeight != null) { onReceiveHeight(parsedHeight); } } } ``` 然后,创建一个 `WebViewController`,并在 `WebView` 中使用它: ```dart WebViewController _controller; double _webViewHeight = 0.0; @override Widget build(BuildContext context) { return WebView( initialUrl: 'https://www.example.com', javascriptMode: JavascriptMode.unrestricted, onWebViewCreated: (controller) { _controller = controller; _controller.addJavascriptChannel( name: 'heightChannel', onMessageReceived: (message) { HeightChannel((height) { setState(() { _webViewHeight = height; }); }).receiveHeight(message); }); }, onPageFinished: (url) { _controller.evaluateJavascript(''' heightChannel.postMessage(document.documentElement.scrollHeight.toString()); '''); }, ); } ``` 在上述代码中,`onWebViewCreated` 方法中创建了一个名为 `heightChannel` 的 `JavascriptChannel`,并在 `onPageFinished` 方法中使用 `evaluateJavascript` 方法网页发送消息,获取网页的高度。当网页发送高度信息时,`onMessageReceived` 回调会被触发,将高度传递给 `HeightChannel`,并在 Flutter 端更新 `_webViewHeight` 的值。 最后,你可以使用 `_webViewHeight` 属性来显示网页的高度,例如: ```dart Text('Webview height: $_webViewHeight') ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值