目录
- 1.前言
- 添加判断
- 3.总结
1.前言
WebView只识别https和http,当WebView读取到URL地址,执行URL并跳转至第三方App的页面,获得第三方App回调响应后,不能识别App回调数据URL的SCHEME信息,就会报错访问失败,未知错误。
添加判断
Android使用WebView时,需要重写shouldOverrideUrlLoading()和onPageFinished(),我们在前者进行https和http的判断,如果不是这两种协议服务,就调用系统浏览器把识别不了的URL地址传进去,并创建Intent意图实例,使用startActivity(intent数据)打开浏览器并执行请问访问URL,如下:
(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
try {
if (!("http:") ||!("https:")) {
Intent intent = new Intent(Intent.ACTION_VIEW,
(url));
startActivity(intent);
return true;
}
}
catch (Exception e){
return false;
}
(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
(view, url);
//这是本人业务的对话框方法。
();
}
});
3.总结
仅自己学习记录,如有错误,敬请谅解~,谢谢~~~