我发现android 4不能与ssl配合使用,尝试通过https与api联系时会导致崩溃
javax.net.ssl.SSLException:SSL握手已中止:ssl = 0xb8dbad20:系统调用期间I / O错误,对等连接重置
这是我从其他类似问题中尝试过的方法:
if (Build.VERSION.SDK_INT >= 16 && Build.VERSION.SDK_INT < 22) {
try {
Logger.e("under lolipop");
SSLContext sc = SSLContext.getInstance("TLS");
sc.init(null, new TrustManager[] { new MyTrustManager() }, new SecureRandom());
client.sslSocketFactory(sc.getSocketFactory());
} catch (Exception e) {
Logger.e("HTTPS"+ e.getMessage() );
}
}
Run Code Online (Sandbox Code Playgroud)
哪个没有影响结果
和
if (Build.VERSION.SDK_INT >= 16 && Build.VERSION.SDK_INT < 22) {
try {
client.sslSocketFactory(new TLSSocketFactory(), (X509TrustManager)trustAllCerts[0])
.build();
Logger.e("SETUP TRUST SSL");
return client.build();
} catch (KeyManagementException e) {
Logger.e("SETUP TRUST SSL Failed "+e.getMessage());
e.printStackTrace();
} catch …Run Code Online (Sandbox Code Playgroud)