Webview中涉及到支付宝支付的,ERR_UNKNOWN_URL_SCHEME

在调用同程旅游的订购机票的h5页面时,发现到了支付这一步的时候,会提示  ERR_UNKNOWN_URL_SCHEME,后来查了才知道原来是被拦截了。我们传递到webview里的url不一定是合法的,很有可能是被定义好的,用来打开本地app的,以为我们都是知道,通过rul是可以打开本地app的,所以我们要添加以下代码。


mWebView = (WebView) findViewById(R.id.guangweb);
		mWebView.loadUrl("地址");
		mWebView.requestFocusFromTouch();
		mWebView.getSettings()
				.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
		/** 覆盖调用系统或自带浏览器行为打开网页 */

		mWebView.setWebViewClient(new WebViewClient() {
			@Override
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				if (url.startsWith("http:") || url.startsWith("https:")) {
					return false;
				}
				try {
					Intent intent = new Intent(Intent.ACTION_VIEW, Uri
							.parse(url));
					startActivity(intent);
				} catch (Exception e) {
				}

				return true;
			}
		});



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值