|
|
@@ -9,7 +9,6 @@ import com.ntels.onecable.admin.common.util.LogUtil;
|
|
|
import com.ntels.onecable.admin.common.util.Util;
|
|
|
|
|
|
import org.java_websocket.WebSocket;
|
|
|
-import org.java_websocket.client.DefaultSSLWebSocketClientFactory;
|
|
|
import org.java_websocket.client.WebSocketClient;
|
|
|
import org.java_websocket.drafts.Draft_10;
|
|
|
import org.java_websocket.handshake.ServerHandshake;
|
|
|
@@ -31,10 +30,13 @@ import android.util.Log;
|
|
|
import java.net.URI;
|
|
|
import java.net.URISyntaxException;
|
|
|
import java.security.NoSuchAlgorithmException;
|
|
|
+import java.security.SecureRandom;
|
|
|
+import java.security.cert.X509Certificate;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
import javax.net.ssl.SSLContext;
|
|
|
+import javax.net.ssl.SSLSocketFactory;
|
|
|
import javax.net.ssl.TrustManager;
|
|
|
import javax.net.ssl.X509TrustManager;
|
|
|
|
|
|
@@ -229,24 +231,24 @@ public class WebSocketService extends Service {
|
|
|
if (uri.getScheme().equals("wss")) {
|
|
|
try {
|
|
|
TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
|
|
|
- public java.security.cert.X509Certificate[] getAcceptedIssuers() {
|
|
|
- return new java.security.cert.X509Certificate[]{};
|
|
|
+ public X509Certificate[] getAcceptedIssuers() {
|
|
|
+ X509Certificate[] myTrustedAnchors = new X509Certificate[0];
|
|
|
+ return myTrustedAnchors;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) throws java.security.cert
|
|
|
- .CertificateException {
|
|
|
+ public void checkClientTrusted(X509Certificate[] certs, String authType) {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) throws java.security.cert
|
|
|
- .CertificateException {
|
|
|
+ public void checkServerTrusted(X509Certificate[] certs, String authType) {
|
|
|
}
|
|
|
- }
|
|
|
- };
|
|
|
- SSLContext sc = SSLContext.getInstance("TLS");
|
|
|
- sc.init(null, trustAllCerts, new java.security.SecureRandom());
|
|
|
- mWebSocket.setWebSocketFactory(new DefaultSSLWebSocketClientFactory(sc));
|
|
|
+ }};
|
|
|
+ SSLContext sslContext = SSLContext.getInstance("TLS");
|
|
|
+ sslContext.init(null, trustAllCerts, new SecureRandom());
|
|
|
+ SSLSocketFactory factory = sslContext.getSocketFactory();
|
|
|
+ mWebSocket.setSocket(factory.createSocket());
|
|
|
+ mWebSocket.connectBlocking();
|
|
|
} catch (NoSuchAlgorithmException e) {
|
|
|
e.printStackTrace();
|
|
|
} catch (Exception e) {
|
|
|
@@ -303,7 +305,7 @@ public class WebSocketService extends Service {
|
|
|
|
|
|
String oldDeviceConn = mUtil.null2string(mAppConfig.getDevicesList(
|
|
|
mUtil.null2string(jsonObject.get(Constants.KEY_DEVICE_ID))).get(Constants.KEY_DEVICE_CONN));
|
|
|
- String newDeviceConn =mUtil.null2string(jsonObject.get(Constants.KEY_DEVICE_CONN));
|
|
|
+ String newDeviceConn = mUtil.null2string(jsonObject.get(Constants.KEY_DEVICE_CONN));
|
|
|
if (!oldDeviceConn.equals(newDeviceConn)) {
|
|
|
mAppConfig.getDevicesList(mUtil.null2string(jsonObject.get(Constants.KEY_DEVICE_ID))).put(Constants.KEY_DEVICE_CONN,
|
|
|
mUtil.null2string(jsonObject.get(Constants.KEY_DEVICE_CONN)));
|