安卓app 打开H5 白屏

问题: 安卓app 在个别机型(vivo,oppo, 华为的老版手机) 突然报说H5 白屏

复测情况:安卓8.1 版本手机确实白屏,但是只有生产环境的包是白屏的,dev和test环境打包安卓之后都是能正常打开H5(对应环境的H5 域名链接)(同一个手机)

最终发现问题所在:H5生产环境域名的ssl证书在webview引起报错,导致终止了页面加载,就没有加载H5 页面
解决方案:
1. 让运维帮忙查看ssl证书的可能问题
2. 让app 忽略证书报错,继续加载H5页面

我这边因为证书是外部公司提供,改起来比较麻烦,所以就选择了第二种方案
然后app那边说是已经做过处理,确实是有处理代码, 多方查询后发现他们调用了
super.onReceivedSslError(view, handler, error),super的实现是sslErrorHandler.cancel();,终止访问,所以一定不要调用super这句
以下是正确的处理代码:

public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    
    
	// super这个不能调用,如果有用到一定要注释去掉
	//super.onReceivedSslError(view, handler, error);

	handler.proceed();

}

然后app走正常发布流程,让客户用新版app就可以正常打开H5页面了

猜你喜欢

转载自blog.csdn.net/be_strong_web/article/details/128315140
今日推荐