在android 4.0.1

时间:2017-06-26 13:56:48

标签: android ssl retrofit

我的网址是https所以当我使用Retrofit for android 6.0设备时,它的工作正常。但是设备有android android 4.0.1操作系统给它

  

javax.net.ssl.SSLHandshakeException:javax.net.ssl.SSLProtocolException:SSL握手中止:ssl = 0x1b97f80:SSL库失败,通常是协议错误   错误:1407742E:SSL例程:SSL23_GET_SERVER_HELLO:tlsv1警报协议版本(外部/ openssl / ssl / s23_clnt.c:658 0x40265522:0x00000000)

图书馆使用了Retrofit。

使用了像

这样的approch
ConnectionSpec spec = new ConnectionSpec.Builder(ConnectionSpec.COMPATIBLE_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)
            .allEnabledTlsVersions()
            .supportsTlsExtensions(false)
            .allEnabledCipherSuites()
            .build();

Ok HttpClient中添加此内容。 但仍然失败。 已经通过各种stackoverflow链接,但现在工作。 请提出一些建议。 感谢。

0 个答案:

没有答案