2017-02-27 2 views
0

Ich bin nicht so gut, wenn es um Netzwerk-Teil in Android kommt. Hier verwende ich den POST-Dienst. Der folgende Code funktionierte einwandfrei, wenn die URL http: // im Präfix verwendete. Zu dieser Zeit benutzte ich die HttpURLConnection API. Das Problem trat jedoch auf, wenn die URL mit TLS geliefert wurde. Ich muss ab jetzt https: // verwenden. Also habe ich HttpURLConnection im Code in HttpsURLConnection geändert. Aber ich weiß nicht, warum ich diese Ausnahme bekomme. Here is my codeSSLHandshakeException Beim Verbinden mit https URL

Antwort

0

Ich wurde aus ähnlichen Problem leiden ..

Ich habe durch diese gelöst:

public static OkHttpClient getHttpClient() { 
     ConnectionSpec spec = new ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS) 
       .tlsVersions(TlsVersion.TLS_1_0) 
       .cipherSuites(
         CipherSuite.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, 
         CipherSuite.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 
         CipherSuite.TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, 
         CipherSuite.TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 
         CipherSuite.TLS_RSA_WITH_AES_128_CBC_SHA, 
         CipherSuite.TLS_RSA_WITH_3DES_EDE_CBC_SHA) 
       .build(); 
     return new OkHttpClient.Builder() 
       .connectTimeout(2, TimeUnit.MINUTES) 
       .writeTimeout(2, TimeUnit.MINUTES) 
       .readTimeout(3, TimeUnit.MINUTES) 
       .connectionSpecs(Collections.singletonList(spec)) 
       .protocols(Arrays.asList(Protocol.HTTP_1_1)) 
       .build(); 
    } 

du versuchen.

Verwandte Themen