智能媒体管理里因为Android这边的WebView对证书过期做了处理,所以Android端预览失败了,这怎么办?onReceivedSslError SslError:primary error: 4 certificate: Issued to: CN=*.imm.aliyuncs.com,O=Alibaba (China) Technology Co.\, Ltd.,L=HangZhou,ST=ZheJiang,C=CN;
Issued by: CN=GlobalSign Organization Validation CA - SHA256 - G2,O=GlobalSign nv-sa,C=BE;
on URL: https://office-imm-static.imm.aliyuncs.com/avatar.jpeg
在Android端的WebView中,如果证书过期导致预览失败,您可以通过以下两种方式进行处理:
首先,可以获取证书的指纹(sha256),然后调整代码中的MySSLCNSHA256数组变量。如果APP需要访问多张证书,可以在代码中加入多个证书指纹数值。这种方式的原理是:当WebView加载一个使用SSL加密的网页时,如果发生SSL错误,比如证书验证失败或域名不匹配等情况,WebViewClient的onReceivedSslError方法会被调用。此时,程序将会对服务器证书进行强校验,如果服务器传入证书的指纹(sha256)与记录值一致,说明WebView验证过程存在缺陷(如:手机日期错误、根证书被删除等),可以忽略SSL错误。
另外,还可以在测试代码时,将手机日期设置在证书有效期之前,判断WebView是否能正常访问HTTPS站点。这种方式可以帮助您判断问题是否出在证书过期上。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。