当前位置: 首页 > 知识库问答 >
问题:

TLS 1.1 @ TLS 1.2 on httpclientandroidlib

谭山
2023-03-14

在开发Android应用程序期间,我遇到了Android中SSL连接低于KIT KAT的问题。

应用程序正在使用ch.boye。httpclientandroidlib进行连接。当我尝试获取httpConnection时,我收到错误:

执行http请求时出错。

  javax.net.ssl.SSLPeerUnverifiedException: No peer certificate

在Android最新的比KIT KAT一切正常。

我试图使用的解决方案建议在这里,但我有一个问题与类型转换从ch.boye.httpclientandroidlib到apache元素在我目前的实现。

有没有比KIT KAT更低的Android使用此库的解决方案?

共有1个答案

单耘豪
2023-03-14

我在这里找到了解决相同问题的方法……使用TlsSniSocketWorks类(您还必须从同一个“util”文件夹下载IgnoreSSLTrustManager和SelfSignedTrustManager)并将其添加到您的项目中。然后像这样在架构注册表对象上注册新方案:

schemeRegistry.register(new Scheme("https", new TlsSniSocketFactory(), port));

我的问题是我的网络服务设置为仅使用 TLS 1.2。运行 Android 4.4.4 及更低版本的 Android 设备不会自动启用 TLS 1.2,因此您必须手动启用它(重要提示 * 早于 Android 4.1 的设备根本不支持 TLS 1.2,因此此解决方案不适用于那些较旧的设备)

迟到的回答,但希望能帮助别人

干杯。

 类似资料:
  • 我已经用Python 2.7开发了一个应用程序。但它只支持协议_TLSv1。我必须以某种方式使其与协议_TLSv1_1和协议_TLSv1_2兼容。我找不到任何图书馆或窍门。有必要升级Python版本吗? 请指导我或帮助我找到更好的解决方案。没有什么不碍事的解决方案吗?

  • 我的测试程序从以下URL运行HTTP服务器:HTTP://www.herongyang.com/jdk/https-httpsechoer-better-https-server.html 请帮助如何使java只接受TLS1.2连接。

相关问答

相关文章

相关阅读