Retrofit OkHttp SSLHandshakeException

Sto utilizzando OkHttp come cliente in Retrofit. Non sono in grado di colpire un certo https url. Questo server support solo TLS 1.0 e le seguenti cifre TLS_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_RC4_128_MD5

Ecco come faccio ad istanziare il mio OkHttpClient:

  • Avviare le autorizzazioni di notifica (GCM) in fase di runtime?
  • Risorse String dinamiche Android
  • Come spegnere un android mobile in modo programmato?
  • android - come eseguire una scansione di text?
  • exception di memory eccezionale + analisi della dump di file hprof
  • Notifica Android dopo l'applicazione è installata sul dispositivo - come fare?
  • OkHttpClient client = new OkHttpClient(); try { // Create a trust manager that does not validate certificate chains final TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() { @Override public void checkClientTrusted( java.security.cert.X509Certificate[] chain, String authType) throws CertificateException { } @Override public void checkServerTrusted( java.security.cert.X509Certificate[] chain, String authType) throws CertificateException { } @Override public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } }}; // Install the all-trusting trust manager final SSLContext sslContext = SSLContext.getInstance("TLSv1"); sslContext.init(null, trustAllCerts, new java.security.SecureRandom()); // Create an ssl socket factory with our all-trusting manager final SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); client.setSslSocketFactory(sslSocketFactory); client.setHostnameVerifier(new HostnameVerifier() { @Override public boolean verify(String hostname, SSLSession session) { return true; } }); } catch (Exception e) { throw new RuntimeException(e); } return client; } 

    E la mia app continua a gettare questa exception:

    javax.net.ssl.SSLProtocolException: La stretta di mano SSL è stata interrotta: ssl = 0x9742f000: errore nella libreria SSL, di solito un errore di errore di protocollo: 14077410: routine SSL: SSL23_GET_SERVER_HELLO: sslv3 avviso di handshake di allarme (esterno / openssl / ssl / s23_clnt.c: 770 0xab9fcc4d: 0x00000000)

  • il modo più semplice per usare svg in android?
  • Ricco di immagini scorrere e zoom su android
  • Come eseguire l'analisi dell'unità JSON analisi
  • Google Maps non caricherà nella mia applicazione Android PhoneGap
  • Android - il piè di pagina scorra lo schermo quando viene utilizzato in CoordinatorLayout
  • Stile di scorrimento di Spinner
  • One Solution collect form web for “Retrofit OkHttp SSLHandshakeException”

    OkHttp non support più RC4 nella sua configuration predefinita da OkHttp v2.3 ( note di rilascio ). È ansible utilizzare ConnectionSpec ( javadoc ) per triggersrlo, il ConnectionSpecTest.java ( codice sorgente ) mostra alcuni esempi.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.