在开发Android应用程序的过程中,我遇到了一个问题: android中的SSL连接低于KIT KAT。
应用程序正在使用ch.boye.httpclientandroidlib进行连接。当我试图获得httpConnection时,我得到的是错误:
下面是执行http请求时出现的错误。
javax.net.ssl.SSLPeerUnverifiedException: No peer certificate在Android系统中,最新的比KAT还好,一切都很好。
我正在尝试使用这里中提供的解决方案,但在当前的实现中,从这里到apache之间的转换类型存在问题。
有没有任何解决方案来使用这个库的android低于工具包凯特?
发布于 2018-06-13 15:58:29
我找到了解决这个问题的办法,这里.使用类TlsSniSocketFactory (您还必须从同一个"util“文件夹下载IgnoreSSLTrustManager和SelfSignedTrustManager )并将其添加到项目中。然后在SchemeRegistry对象上注册新方案,如下所示:
schemeRegistry.register(new Scheme("https", new TlsSniSocketFactory(), port));我的问题是我的web服务被设置为只使用TLS 1.2。运行Android4.4.4及以下版本的安卓设备不会自动启用TLS1.2,因此您必须手动启用TLS1.2(重要的*设备比Android4.1更老的设备根本无法支持TLS1.2,因此该解决方案不能适用于那些旧设备)
迟答,但希望能帮助别人
干杯
https://stackoverflow.com/questions/45796666
复制相似问题