华为Mate/P系列手机特定批次产品的的固件存在问题。用户在使用APP时,APP的webview控件无法访问HTTPS站点,显示白屏。这个问题导致部分银行类应用无法登录,12306等应用无法支付、百度账号无法登录等问题。
解决方法一:手机升级Android System Webview组件
在手机上运行“华为应用市场”,查找Android System WebView应用,然后选择升级;或者使用浏览器访问 http://appstore.huawei.com/app/C10730262 ,下载和升级WebView组件。华为应用市场对此组件更新的介绍文字如下,供参考:
解决方法二:优化APP中WebView校验证书的代码
Android系统的碎片化很严重,并且手机日期不正确、手机根证书异常、webview BUG等各种原因,都会导致webview无法访问HTTPS站点。SSL错误的处理方式十分关键,如果处理不当,可能导致中间人攻击,黑客窃听数据,进而引发安全事故。
请参考 这篇文章,对onReceivedSslError的代码进行优化,也可以解决这个问题。
文档编写日期:2016年12月28日