java - 错误:javax.net.ssl.SSLHandshakeException,SSL 库失败?

标签 java android openssl retrofit

在我的 Android 应用程序中使用改造库很长一段时间。 现在应用程序停止工作,并显示一条错误消息:

ERROR﹕ javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0xb9753f20: Failure in SSL library, usually a protocol error
error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version (external/openssl/ssl/s23_clnt.c:741 0x97015926:0x00000000)
        at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:448);

我有 OpenSSL 将在本周更新的信息, 但我不明白这与我的应用程序有什么关系(它只有 REST API、Retrofit、Java、自己的服务器)。这是我的 app.config

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.xxx.xxx"
        minSdkVersion 16
        targetSdkVersion 20
        versionCode 34
        versionName "1.0"
    }
    sourceSets {
        main {
            res.srcDirs =
                    [
                            'src/main/res/layout/navdrawer',
                            'src/main/res/layout',
                            'src/main/res'
                    ]
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
//    compile 'com.google.android.gms:play-services:+'
    compile "com.google.android.gms:play-services:3.1.+"
    compile 'com.android.support:appcompat-v7:20.0.0'
    compile 'com.android.support:support-v13:20.0.+'
    compile 'uk.co.chrisjenx:calligraphy:1.1.+'
    compile 'com.squareup.okhttp:okhttp-urlconnection:+'
    compile 'com.squareup.okhttp:okhttp:+'

    compile 'com.squareup.picasso:picasso:+'

    compile project(':facebook')
    compile 'com.squareup.retrofit:retrofit:+'
    //compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.1'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.viewpagerindicator:library:2.4.1@aar'


}

最佳答案

您可能必须设置 TLS 密码和可信证书,如下所述:https://github.com/square/okhttp/wiki/HTTPS

关于java - 错误:javax.net.ssl.SSLHandshakeException,SSL 库失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29099892/

相关文章:

android - 带有 boot_completed 的运行时异常 Android O

java - tomcat的pkcs12证书是否需要加ca证书

java - 获取带有希伯来字符/UTF-8 的网页内容

Java CheckBox 可选择,但 isSelected() 返回 false

java - Graphic2D 不动

android - 支持 Web 和移动设备的单一 AngularJS 代码库

java - 如何设置 NetBeans 运行的 JDK?

android - 像在 spotify 应用程序中一样搜索幻灯片动画

c++ - tcp_connect 中的 gSoap SSL/TLS 证书主机名不匹配

linux - base64 摘要- 无效输入?