在我的Android代码中,我试图连接到一个特定的网址,如
网址url =新网址(urlStr);
HttpsURLConnection connection =(HttpsURLConnection)url.openConnection();
我的应用程序试图通过某些手机中的SSL连接到网址(https)并使用TLS作为底层协议。由于目标服务器只接受TLS,因此通过SSL启动https连接的移动电话失败。
通过wireshark确认了上述行为。
有没有像我的应用只能通过TLS启动https连接的方式。
感谢。
答案 0 :(得分:0)
您可以通过使用SSLContext
类设置提供程序来实现此目的。
SSLContext context = SSLContext.getInstance("TLS");
context.init(null, null, null);
SSLSocketFactory factory = context.getSocketFactory();
httpURLConnection.setSSLSocketFactory(factory);
但是有一个已知的issue因此它可能无法在所有设备上运行。有关SSL的更多信息,请参阅android training。