flutter ios webview不能打开http地址

这篇具有很好参考价值的文章主要介绍了flutter ios webview不能打开http地址。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考
1、iOS添加信任
webview_flutter 在使用过程中会iOS出现无法加载HTTP请求的情况, 但是Flutter 却可以加载HTTP请求。这就与两个的框架有关了,Flutter是独立于UIKit框架的。

解决方案就是在iOS 的info.plist中添加对HTTP的信任。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

安卓的一些地址打不开
Flutter-Webview组件处理Scheme协议
之前我介绍过Flutter建立JsBridge用于webview与h5通信,有时候h5页面中需要唤醒其他应用的功能,通过约定的Scheme协议,比如weixin://,这时候就需要我们的Webview组件处理,否则就会出现net:ERR_UNKNOWN_URL-SCHEME的页面报错。

/// 兼容android进入报错页
    _onStateChanged = flutterWebViewPlugin.onStateChanged
        .listen((WebViewStateChanged state) async {
      if (mounted) {
        if (state.url.startsWith('weixin:') &&
            state.type == WebViewState.abortLoad) {
          if (await canLaunch(state.url)) {
            await launch(state.url);
          } else {
            throw 'Could not launch ${state.url}';
          }
        }
      }
    });

我自己的代码不需要跳外部浏览器,判断是这个协议的不处理就好了文章来源地址https://www.toymoban.com/news/detail-672868.html

    _onStateChanged = flutterWebViewPlugin.onStateChanged
        .listen((WebViewStateChanged state) async {
      if (mounted) {
        if (state.url.startsWith('weixin:') &&
            state.type == WebViewState.abortLoad) {
          if (await canLaunch(state.url)) {
        //不处理就正常打开了
          }
        }
      }
    });

到了这里,关于flutter ios webview不能打开http地址的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp开发微信小程序,webview内嵌h5,h5打开pdf地址,解决方案

    根据公司要求,让我写一个h5,后续会嵌入到合作公司的微信小程序的webview中,如果是自己公司微信小程序,可以采取先下载下来pdf,然后通过wx.openDocument,进行单纯的预览操作,这个可以根据这个老哥的文章去操作。但是因为是合作方公司,故只能自己想办法,起初想到的

    2024年02月07日
    浏览(50)
  • flutter android Webview 打开网页错误ERR_CLEARTEXT_NOT_PERMITTED 、 net:ERR_CACHE_MISS

    前言:当你在Flutter应用中,使用WebView尝试打开的网页时,android环境可能会遇一些问题 原因:Android 9及更高版本,默认情况下,禁止应用程序通过非安全的明文HTTP连接进行网络通信。为了解决这个问题,你可以采取以下三种方法之一: - 将你的网页迁移到使用HTTPS连接。这是

    2024年02月14日
    浏览(39)
  • 阿里云图片上传OSS成功后打开地址不能预览只能下载问题记录

            由于业务需要,最近从OSS新创建了一个bucket,使用之前的上传代码进行上传图片时可以看到图片上传成功,但是打开图片地址之后不能正常访问,浏览器会提示进行下载.好奇同样的代码,另一个bucket能正常上传,但是新创建的bucket使用同样代码之后就出现这个问题,怀疑是

    2024年02月04日
    浏览(35)
  • Android WebView 报错 ( 网页无法打开 位于 http://... 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED )

    在 Android 9.0 及以上的系统版本中,系统默认情况下禁止应用程序使用不安全的明文流量进行网络连接,以提高用户的安全性。 这意味着,如果应用程序尝试连接到一个不安全的 HTTP 网站,将收到 net::ERR_CLEARTEXT_NOT_PERMITTED 错误 ; 也就是说应用中的 WebView 尝试显示 HTTP 站点时就

    2024年02月05日
    浏览(43)
  • Flutter 运行IOS真机,提示无法打开“iproxy”,因为无法验证开发者

    Flutter 运行IOS真机,提示无法打开“iproxy”。如下图: 在终端输入一下命令行 + flutter SDK路径(/Users/xxx/flutter/bin/cache/artifacts/usbmuxd/iproxy)  如:

    2024年02月08日
    浏览(58)
  • 【错误记录】Android WebView 报错 ( 网页无法打开 位于 http://... 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED )

    报错信息 : 网页无法打开 位于 http://… 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED ; 在 Android 9.0 及以上的系统版本中 , 系统默认情况下禁止应用程序使用不安全的明文流量进行网络连接, 以提高用户的安全性。 这意味着,如果应用程序尝试连接到一个不安全的 HTTP 网

    2024年02月11日
    浏览(54)
  • Python 获取 IOS/Iphone/Ipad等设备拍摄的HEIC图片的拍摄地址/坐标/位置以及python的googleEarth的xml文件绘制初步

    出去旅游,用iphone拍了非常多的照片,心想这些照片都有位置信息和拍摄时间信息,那能不能用python制作一个程序,输入所有照片,然后读取这些信息,最后输出一个xml路径文件,打开在googleEarth看。虽然最近逐步奉行“不讨论意义主义”,但我觉得此举的意义,首先是折腾

    2024年02月21日
    浏览(61)
  • 【Flutter】Flutter 如何使用 WebView

    在移动应用开发中,我们有时候需要在应用内部打开网页,而不是跳转到外部的浏览器。这时候,我们就需要使用到 WebView。那么在 Flutter 这个强大的移动应用开发框架中,我们如何使用 WebView 呢? 如果你想深入学习 Flutter,掌握更多的技巧和最佳实践,我有一个好消息要告

    2024年02月16日
    浏览(44)
  • flutter:webview_flutter的简单使用

    最近在研究如何在应用程序中嵌入Web视图,发现有两个库不错。 一个是官方维护、一个是第三方维护。因为没说特别的需求,就使用了官方库,实现一些简单功能是完全ok的 不建议使用,因为效果不怎么样,当然也可能是我太菜不会用,下面这个问题就很难理解为什么会这样

    2024年02月12日
    浏览(46)
  • 封装flutter webview页面

    例如在flutter里面跳转百度页面 需要安装webview_flutter webview_page.dart 使用

    2024年02月03日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包