首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android 5.0中的SSL套接字异常

android 5.0中的SSL套接字异常
EN

Stack Overflow用户
提问于 2014-11-26 10:08:16
回答 3查看 2K关注 0票数 0

当我使用Https而API调用时,我对Android L 5.0有异议。我正在跟踪异常.

代码语言:javascript
运行
复制
javax.net.ssl.SSLPeerUnverifiedException: No peer certificate
11-26 15:35:01.919: W/System.err(353):  at com.android.org.conscrypt.SSLNullSession.getPeerCertificates(SSLNullSession.java:104)
11-26 15:35:01.919: W/System.err(353):  at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:93)
11-26 15:35:01.919: W/System.err(353):  at org.apache.http.conn.ssl.SSLSocketFactory.createSocket(SSLSocketFactory.java:388)
11-26 15:35:01.919: W/System.err(353):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.updateSecureConnection(DefaultClientConnectionOperator.java:231)
11-26 15:35:01.919: W/System.err(353):  at org.apache.http.impl.conn.AbstractPoolEntry.layerProtocol(AbstractPoolEntry.java:302)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.layerProtocol(AbstractPooledConnAdapter.java:146)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.client.DefaultRequestDirector.establishRoute(DefaultRequestDirector.java:654)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:370)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
11-26 15:35:01.920: W/System.err(353):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
11-26 15:35:01.920: W/System.err(353):  at com.praxify.model.CallServer.makeHttpGetRequest(CallServer.java:1515)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-11-28 11:45:52

我也已经处理这个问题好几天了,最后我在这里发现了这个问题(但不是很好的解决方案)。问题是,从安卓5开始,谷歌就不信任2016年后到期的SHA1证书(你可以通过浏览器查看锁,看看这是否是你的情况)。对我来说,我们唯一能做的就是请求一个新的带有SHA256或SHA1证书的服务器证书。将于2015年届满。抱歉,我的英语

在这里也进行了讨论:https://code.google.com/p/android-developer-preview/issues/detail?id=1200

票数 1
EN

Stack Overflow用户

发布于 2014-11-29 05:24:07

在找到几天之后,我了解了API调用的volley,它帮助我们解决了这个问题,您可以参考volley来处理API调用。利布利布为我工作。

再找一个问题

程序内计费中断,因为根据APK证书计算的SHA1指纹与开发人员控制台和KitKat中的SHA1不同。

票数 0
EN

Stack Overflow用户

发布于 2014-12-22 13:34:33

我也有过同样的问题。对我来说,问题在于服务器使用的是DE-CBC3-SHA密码,而在Android5.0中,默认情况下不再启用对它的支持。有关这方面的更多信息,请在这里:https://developer.android.com/reference/javax/net/ssl/SSLSocket.html

因此,这个问题的解决方案是:( a)更改服务器配置,以便服务器支持一些更现代的密码器(它没有无缘无故地被禁用)。b)启用对密码的支持。

要检查您可以使用什么密码服务器:

代码语言:javascript
运行
复制
openssl s_client -connect www.myurl.com:443

希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27146303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档