From 3bf80b982916bb2b5201ed7cb845255f86e94849 Mon Sep 17 00:00:00 2001 From: gaozl Date: Tue, 28 Oct 2025 18:06:05 +0800 Subject: [PATCH] fix: ci --- .../qianmu/container/app/MyApplication.java | 36 ++++++++----------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/qianmu/container/app/MyApplication.java b/app/src/main/java/qianmu/container/app/MyApplication.java index c6cd730..3953534 100644 --- a/app/src/main/java/qianmu/container/app/MyApplication.java +++ b/app/src/main/java/qianmu/container/app/MyApplication.java @@ -143,32 +143,26 @@ public class MyApplication extends Application { public OkHttpClient createOkHttpClient(Context context) { try { - // 1. 创建信任管理器(这里示例为信任所有证书,生产环境需谨慎) - X509TrustManager trustManager = new X509TrustManager() { - @Override - public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {} - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {} - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[0]; - } - }; - + // 获取系统默认信任管理器 + TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance( + TrustManagerFactory.getDefaultAlgorithm()); + trustManagerFactory.init((KeyStore) null); + TrustManager[] trustManagers = trustManagerFactory.getTrustManagers(); + X509TrustManager trustManager = (X509TrustManager) trustManagers[0]; + + // 初始化 SSL 上下文 SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, new TrustManager[]{trustManager}, null); - javax.net.ssl.SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); - // 4. 配置 OkHttpClient + + // 构建 OkHttpClient(3.x 版本同样需要显式传入 trustManager) return new OkHttpClient.Builder() - .readTimeout(10, TimeUnit.SECONDS) - .writeTimeout(10, TimeUnit.SECONDS) - .connectTimeout(10, TimeUnit.SECONDS) - .sslSocketFactory(sslSocketFactory, trustManager) // 同时传入 TrustManager + .sslSocketFactory(sslContext.getSocketFactory(), trustManager) // 关键 + .connectTimeout(15, TimeUnit.SECONDS) + .readTimeout(15, TimeUnit.SECONDS) + .writeTimeout(15, TimeUnit.SECONDS) .build(); } catch (Exception e) { - throw new RuntimeException(e); + throw new RuntimeException("OkHttp 初始化失败", e); } }