Android L – 没有对等证书

我开发了一个小应用程序,使用带有自签名证书的SSL连接到我的服务器.为了使它工作,我使用BouncyCastleProvider将我的证书加载到自定义密钥库中,并在我的自定义SSLSocketFactory中导入证书.
Everythink在 android 2.3(最小sdk)到4.4.4之间运行良好.但在android L(预览版)中,我的应用失败了:

Tue Aug 12 14:34:40 BRT 2014 :
javax.net.ssl.SSLPeerUnverifiedException: No peer certificate at
com.android.org.conscrypt.SSLNullSession.getPeerCertificates(SSLNullSession.java:104)
at
org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:93)
at
org.apache.http.conn.ssl.SSLSocketFactory.createSocket(SSLSocketFactory.java:388)
at
org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:165)
at
org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
at
org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at
org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
….

我完全不知道如何解决它.
任何帮助将非常感激.

解决方法

只是为了让您知道我们如何在我们的项目中修复此问题.也许这可以帮助任何人.

我们的应用程序基于离子和AndroidAsync网络库,它有这个错误:
https://github.com/koush/AndroidAsync/issues/187

对最新版本(1.4.0)的更新修复了Android L上的“无对等证书”问题.

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...