android unknown url,android webpage err_unknown_url_scheme

搞一个 Android 的webview demo 来访问网页,

结果 模拟器就报错了: webpage err_unknown_url_scheme

于是去百度了 一下。发现挺多解决方案的,都拿来试试。居然有几种方式都可以。

1,

参考 https://blog.csdn.net/grp0916/article/details/51481330

webView.setWebChromeClient(new WebChromeClient());

webView.getSettings().setJavaScriptEnabled(true); //设置WebView属性,运行执行js脚本

webView.loadUrl("https://www.baidu.com/"); //调用loadUrl方法为WebView加入链接

setContentView(webView);

2,

参考  https://blog.csdn.net/BarryYangGoing/article/details/51848907

// webView.setWebViewClient(new WebViewClient() {

// //设置在webView点击打开的新网页在当前界面显示,而不跳转到新的浏览器中

// @Override

// public boolean shouldOverrideUrlLoading(WebView view, String url) {

//

//

// if( url.startsWith("http:") || url.startsWith("https:") ) {

// return false;

// }

// Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));

// startActivity(intent);

// // 下面这一行保留的时候,原网页仍报错,新网页正常.所以注释掉后,也就没问题了

// // view.loadUrl(url);

// return true;

//

//

//

//

//

//

//

//

// }

// });

也可以

3,

参考

https://blog.csdn.net/xiaopihair123/article/details/73350778

webView.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0");

看起来是可以访问了,

可是有一个问题:

就是 如果地址是 www.baidu.com 一般来说,都是会识别而跳转到 m.baidu.com

但是上面的方式不会访问的是PC端的百度页面。所以应该是内容设置不对, 如果有兴趣可以自己去修改。

4,

参考: https://blog.csdn.net/u013062469/article/details/46326573

if (httpurl.startsWith("scheme:") || httpurl.startsWith("scheme:")) {

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(httpurl));

startActivity(intent);

}

return false;

5,

直接 return false

webView.setWebViewClient(new WebViewClient() {

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

return false;

}

});

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值