net:err_unknown_url_scheme

net:err_unknown_url_scheme

WebView在应用中还是很常见的,比如我们的注册协议、常见问题等

但是实际开发中总是会遇到一些问题,net:err_unknown_url_scheme

1、解决方法:以”http”,”https”开头的url在本页用webview进行加载,其他链接进行跳转

2、解决方法:以微信、支付宝、拨号 三种跳转方式,其他类型等进行分类

mWebView.setWebViewClient(new WebViewClient() {
            //重写此方法,查看浏览器内部跳转
            public boolean shouldOverrideUrlLoading(WebView v, String u) {
                String urlStr = u;
                Log.i(String.valueOf(DetailsActivity.this), urlStr);
                if (u == null) {
                    return false;
                }
                try {
                    /*|| url.startsWith("http:") || url.startsWith("https:")*/
                    if (u.startsWith("weixin://") || u.startsWith("alipays://") || u.startsWith("tel://")) {
                        //类型我目前用到的是微信、支付宝、拨号 三种跳转方式,其他类型自加
                        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
                        startActivity(intent);
                        return true;
                    }
                } catch (Exception e) {
                    return false;
                }
                v.loadUrl(u);
                return true;
            }

            @Override
            public void onPageStarted(WebView view, String u, Bitmap favicon) {
                super.onPageStarted(view, u, favicon);
                loadingWindow.show();
            }

            @Override
            public void onPageFinished(WebView view, String u) {
                super.onPageFinished(view, url);
                loadingWindow.dismiss();
            }

            public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
                handler.cancel(); //默认的处理方式,WebView变成空白页   
//                handler.process();//接受证书
//                handleMessage(Message msg);// 其他处理
            }

        });
        if (url != null) {
            mWebView.loadUrl(url);
        }
    }

应用中重写shouldOverrideUrlLoading这个方法设置相应的webview中连接的指定跳转方式即可。

net:err_unknown_url_scheme这个问题正是在网页中有 其他协议的连接。

 

还有Android 9.0的坑请移步  net::ERR_CLEARTEXT_NOT_PERMITTED Android9.0无法加载url

                                             Android 9.0 WebView无法加载页面报错 net:ERR_CLEARTEXT_NOT_PERMITTED

 

后续还有更多在进行补充。

书到用时方恨少,纸上得来终觉浅!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115037.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • v3S驱动gt911触摸「建议收藏」

    v3S驱动gt911触摸「建议收藏」文章目录一、修改设备树二、编写驱动三、运行测试四、编译进内核1.拷贝文件2.修改对应的Makefile3.编译运行4.测试1.注释掉坐标信息五、移植tslib1.buildroot配置tslib2.配置tslib3.测试一、修改设备树在sun8i-v3s-licheepi-zero-dock.dts中添加pio节点(其实经过测试不添加也是可以的,后面会说)&pio{ /*按键*/ key_pins:key_pins@0{ pins=”PG2″;

    2022年6月15日
    39
  • 坐标拾取系统定位_cad移动到绝对坐标

    坐标拾取系统定位_cad移动到绝对坐标usingUnityEngine;usingUnityEngine.UI;usingSystem.Collections;publicclasstransforms:MonoBeh

    2022年8月5日
    2
  • hashmap面试题简书_三年php面试题

    hashmap面试题简书_三年php面试题这篇文章仅限小编个人的理解,小编不是Java方向的,只是对Java有很高的学习兴趣如果有什么不对的地方还望大佬指点HashMap的底层是数组+链表,(很多人应该都知道了)JDK1.7的是数组+链表(1.7只是一个例子,以前的话也是这样后面就以1.7为例子了)首先是一个数组,然后数组的类型是链表元素是头插法JDK1.8的是数组+链表或者数组+红黑树首先是一个数组,然后数组的类型是链表在链表的元素大于8的时候,会变成红黑树在红黑树的元素小于6的时候会变成链表元素进行尾插HaspM.

    2022年8月10日
    3
  • 最优化算法之粒子群算法(PSO)

    最优化算法之粒子群算法(PSO)一、粒子群算法的概念  粒子群优化算法(PSO:Particleswarmoptimization)是一种进化计算技术(evolutionarycomputation)。源于对鸟群捕食的行为研究。粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解.  PSO的优势:在于简单容易实现并且没有许多参数的调节。目前已被广泛应用于函数优化、神经网络训练、模糊系统控制…

    2022年6月10日
    30
  • 滴滴开源夜莺Nightingale:企业级监控解决方案「建议收藏」

    滴滴开源夜莺Nightingale:企业级监控解决方案「建议收藏」导读:滴滴开源又双叒发布新开源项目啦——夜莺(Nightingale)是滴滴基础平台联合滴滴云研发和开源的企业级监控解决方案。旨在满足云原生时代企业级的…

    2022年6月2日
    154
  • Linux压测工具(http_load,webbench,ab,siege)

    Linux压测工具(http_load,webbench,ab,siege)

    2021年6月2日
    119

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号