------------恢复内容开始------------
不导入证书方式
1.增加以下代码
static class miTM implements TrustManager, X509TrustManager { public X509Certificate[] getAcceptedIssuers() { return null; } public boolean isServerTrusted(X509Certificate[] certs) { return true; } public boolean isClientTrusted(X509Certificate[] certs) { return true; } public void checkServerTrusted(X509Certificate[] certs, String authType) throws CertificateException { return; } public void checkClientTrusted(X509Certificate[] certs, String authType) throws CertificateException { return; } }
try{ TrustManager[] trustAllCerts = new TrustManager[1]; TrustManager tm = new miTM(); trustAllCerts[0] = tm; SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, trustAllCerts, null); SocketFactory factory = sc.getSocketFactory(); mqttConnectOptions.setSocketFactory(factory); }catch (Exception e){ Log.e(TAG, e.toString() ); }
2.具体添加的位置
3.修改为SSL连接,端口号改为8883
4.测试
------------恢复内容结束------------
原文地址:https://www.cnblogs.com/yangfengwu/p/12289258.html
时间: 2024-10-24 05:05:30