Android: пользователи с некоторыми устройствами не могут использовать веб-сервисы моего приложения - SSLPeerUnverifiedException - PullRequest
5 голосов
/ 25 июня 2011

У меня есть приложение, которое взаимодействует через https с моим сервером.У меня есть действующий сертификат.

Приложение отлично работает для большинства пользователей, но некоторые пользователи сообщают, что у них проблемы с подключением к своим корневым устройствам.Они также сообщают с HTC Evo 2.3.3, с обновлением от Sprint, приложение имеет такое же поведение.

Я позаимствовал Evo у друга и смог получить следующую трассировку стека ниже.Я видел решения для этого, которые в основном «принимают все сертификаты», но это невозможно, так как я выпускаю это в производстве.

Кто-нибудь видел исправление для этого?Возможно хранение сертификата моего сервера непосредственно на устройстве?

06-24 15:15:52.051: WARN/ServiceOperation(1535): javax.net.ssl.SSLPeerUnverifiedException: No peer certificate
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.harmony.xnet.provider.jsse.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:258)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:93)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.conn.ssl.SSLSocketFactory.createSocket(SSLSocketFactory.java:381)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:164)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:359)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
06-24 15:15:52.051: WARN/ServiceOperation(1535):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)

1 Ответ

1 голос
/ 08 июля 2011

Кажется, это связано с проблемой, созданной HTC, когда они выпустили 2.3.3.Вот сообщение об ошибке здесь: http://code.google.com/p/android/issues/detail?id=16885#c7

Я собираюсь задержать жесткое кодирование чего-либо в приложении, так что, думаю, пока я не буду поддерживать этих пользователей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...