Android webview不支持该协议

魔教公子 发布于 2016/02/24 17:09
阅读 812
收藏 0
我在程序里加入一个淘宝搜索商品网址,但是 WebViewClient onReceivedError 方法,输出的错误码是-10,错误描述是 不支持该协议 ,如代码

@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_web);
		webView = (WebView) findViewById(R.id.btnWebView);

		webView.getSettings().setJavaScriptEnabled(true);
		webView.getSettings().setSupportZoom(true);
		webView.requestFocus();
		webView.loadUrl("http://s.m.taobao.com/h5?search-btn=&event_submit_do_new_search_auction=1&_input_charset=utf-8&topSearch=1&atype=b&searchfrom=1&action=home%3Aredirect_app_action&from=1");
		// 在WebView中打开链接(默认行为是使用浏览器,设置此项后都用WebView打开)
		// myWebView.setWebViewClient(new WebViewClient());
		// 这样设置后所有的链接都会在当前WebView中打开

		// 更强的打开链接控制:自己覆写一个WebViewClient类:除了指定链接从WebView打开,其他的链接默认打开
		webView.setWebViewClient(new MyWebViewClient());
	}
	private class MyWebViewClient extends WebViewClient {
		// 针对https添加的处理
		public void onReceivedSslError(WebView view, SslErrorHandler handler,
				SslError error) {
			handler.proceed(); // 接受证书
		}
		@Override
		public void onReceivedError(WebView view, int errorCode,
				String description, String failingUrl) {
			super.onReceivedError(view, errorCode, description, failingUrl);
			System.out.println(failingUrl + "====" + errorCode + "===="
					+ description);
		}

		@Override
		public boolean shouldOverrideUrlLoading(WebView view, String url) {
			view.loadUrl(url);
			return false;
		}
	}




协议http为什么被自动改成taobao了呢
搜索网址http://s.m.taobao.com/h5?search-btn=&event_submit_do_new_search_auction=1&_input_charset=utf-8&topSearch=1&atype=b&searchfrom=1&action=home%3Aredirect_app_action&from=1

加载中
返回顶部
顶部