安卓app 打开H5 白屏

本文介绍了一款安卓APP在部分旧型号手机上遇到H5页面白屏的问题及解决方案。通过对生产环境SSL证书问题的排查,采取了让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页面了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值