Browse Source

fix: ci

master
高志龙 7 months ago
parent
commit
7b9b4e790f
  1. 2
      app/build.gradle
  2. 35
      app/src/main/java/qianmu/container/http/retrofit/RetrofitUtil.java

2
app/build.gradle

@ -9,7 +9,7 @@ android {
defaultConfig {
applicationId "qianmu.container"
minSdkVersion 22
minSdkVersion 24
targetSdkVersion 30
versionCode 6
versionName "V2.0.8.2"

35
app/src/main/java/qianmu/container/http/retrofit/RetrofitUtil.java

@ -36,16 +36,41 @@ public class RetrofitUtil {
private static OkHttpClient initOkHttpClient(int timeout) {
try {
// 创建一个信任所有证书的 TrustManager
TrustManager[] trustAllCerts = new TrustManager[]{
new X509TrustManager() {
@Override
public void checkClientTrusted(X509Certificate[] chain, String authType) {}
@Override
public void checkServerTrusted(X509Certificate[] chain, String authType) {}
@Override
public X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[0];
}
}
};
// 初始化 SSLContext
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, trustAllCerts, new SecureRandom());
OkHttpClient.Builder builder = new OkHttpClient.Builder();
builder.readTimeout(timeout, TimeUnit.SECONDS);
builder.writeTimeout(timeout, TimeUnit.SECONDS);
builder.connectTimeout(timeout, TimeUnit.SECONDS);
builder.sslSocketFactory(sslContext.getSocketFactory(), (X509TrustManager) trustAllCerts[0]);
builder.hostnameVerifier(SSLSocketClient.getHostnameVerifier());
return builder.build();
} catch (Throwable t) {
LoggerUtil.e("initOkHttpClient", StringUtil.getThrowableStr(t));
return new OkHttpClient.Builder().sslSocketFactory(SSLSocketClient.getSSLSocketFactory(), SSLSocketClient.getX509TrustManager())
.retryOnConnectionFailure(true)
.hostnameVerifier(SSLSocketClient.getHostnameVerifier())
.connectTimeout(timeout, TimeUnit.SECONDS).readTimeout(timeout, TimeUnit.SECONDS)
.writeTimeout(timeout, TimeUnit.SECONDS).build();
} catch (Throwable t) {
LoggerUtil.e("initOkHttpClient", StringUtil.getThrowableStr(t));
return new OkHttpClient.Builder().connectTimeout(timeout, TimeUnit.SECONDS)
.retryOnConnectionFailure(true).addInterceptor(new BaseInterceptor())
.readTimeout(timeout, TimeUnit.SECONDS).writeTimeout(timeout, TimeUnit.SECONDS).build();
}
}

Loading…
Cancel
Save