P2X v5.6.5版本的 MD5 值为:c9754e3fb9716daeb935e470461cc2a2

以下内容为反编译后的 SopApplication.java 源代码,内容仅作参考


package org.sopcast.android;

import android.app.Application;
import android.content.Context;
import android.os.StrictMode;
import com.lzy.okgo.OkGo;
import com.lzy.okgo.cache.CacheMode;
import com.lzy.okgo.https.HttpsUtils;
import com.lzy.okgo.interceptor.HttpLoggingInterceptor;
import com.lzy.okgo.model.HttpHeaders;
import java.io.File;
import java.io.IOException;
import java.net.InetAddress;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.security.cert.X509Certificate;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import okhttp3.Cache;
import okhttp3.Dns;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Response;
import org.sopcast.android.dnschanger.api.Preferences;
import org.sopcast.android.utils.Utils;

public class SopApplication extends Application {
    public static SopApplication instance;

    public class _CustomDns implements Dns {
        public g7.a dnsManager = new g7.a(new g7.b[]{new h7.d(Preferences.DNS_2), new h7.d("8.8.4.4"), new h7.d(Preferences.DNS_1), new h7.d("104.16.249.249")});

        public _CustomDns(SopApplication sopApplication) {
        }

        @Override
        public List<InetAddress> lookup(String str) {
            g7.a aVar = this.dnsManager;
            if (aVar != null) {
                try {
                    g7.d[] b9 = aVar.b(str);
                    if (b9.length != 0) {
                        ArrayList arrayList = new ArrayList();
                        for (g7.d dVar : b9) {
                            arrayList.addAll(Arrays.asList(InetAddress.getAllByName(dVar.f3589a)));
                        }
                        return arrayList;
                    }
                } catch (IOException e7) {
                    e7.printStackTrace();
                }
            }
            return Dns.SYSTEM.lookup(str);
        }
    }

    public static Context getSopContext() {
        return instance.getApplicationContext();
    }

    @Override
    public void onCreate() {
        SSLContext sSLContext;
        File file;
        super.onCreate();
        m7.a.f5093f.a();
        instance = this;
        OkHttpClient.Builder builder = new OkHttpClient.Builder();
        if (DnsConfig.useCustomDns.booleanValue()) {
            builder.dns(new _CustomDns(this));
        }
        HttpLoggingInterceptor httpLoggingInterceptor = new HttpLoggingInterceptor("===== OkGo");
        httpLoggingInterceptor.setPrintLevel(HttpLoggingInterceptor.Level.NONE);
        httpLoggingInterceptor.setColorLevel(Level.INFO);
        builder.addInterceptor(httpLoggingInterceptor);
        TimeUnit timeUnit = TimeUnit.MILLISECONDS;
        builder.readTimeout(20000L, timeUnit);
        builder.writeTimeout(20000L, timeUnit);
        builder.connectTimeout(20000L, timeUnit);
        HttpsUtils.SSLParams sslSocketFactory = HttpsUtils.getSslSocketFactory();
        builder.sslSocketFactory(sslSocketFactory.sSLSocketFactory, sslSocketFactory.trustManager);
        OkGo.getInstance().init(this).setOkHttpClient(builder.build()).setCacheMode(CacheMode.REQUEST_FAILED_READ_CACHE).setCacheTime(Config.maxDiskUsage).setRetryCount(1);
        final Context applicationContext = getApplicationContext();
        X509TrustManager x509TrustManager = new X509TrustManager() {
            @Override
            public void checkClientTrusted(X509Certificate[] x509CertificateArr, String str) {
            }

            @Override
            public void checkServerTrusted(X509Certificate[] x509CertificateArr, String str) {
            }

            @Override
            public X509Certificate[] getAcceptedIssuers() {
                return new X509Certificate[0];
            }
        };
        try {
            sSLContext = SSLContext.getInstance("SSL");
        } catch (KeyManagementException | NoSuchAlgorithmException e7) {
            e = e7;
            sSLContext = null;
        }
        try {
            try {
                sSLContext.init(null, new TrustManager[]{x509TrustManager}, new SecureRandom());
            } catch (KeyManagementException e9) {
                e = e9;
                e.printStackTrace();
                HostnameVerifier hostnameVerifier = new HostnameVerifier() {
                    @Override
                    public boolean verify(String str, SSLSession sSLSession) {
                        return true;
                    }
                };
                file = new File(getExternalFilesDir(null).getPath());
                if (file.exists()) {
                }
                OkHttpClient.Builder hostnameVerifier2 = new OkHttpClient.Builder().sslSocketFactory(sSLContext.getSocketFactory(), x509TrustManager).hostnameVerifier(hostnameVerifier);
                TimeUnit timeUnit2 = TimeUnit.SECONDS;
                hostnameVerifier2.connectTimeout(20L, timeUnit2).writeTimeout(20L, timeUnit2).readTimeout(20L, timeUnit2).addInterceptor(new Interceptor() {
                    @Override
                    public Response intercept(Interceptor.Chain chain) {
                        Response proceed = chain.proceed(chain.request());
                        int i9 = Utils.isDeviceOffline(applicationContext) ? 100 : 86400;
                        proceed.newBuilder().removeHeader(HttpHeaders.HEAD_KEY_PRAGMA).removeHeader(HttpHeaders.HEAD_KEY_CACHE_CONTROL).header(HttpHeaders.HEAD_KEY_CACHE_CONTROL, "public, max-age=" + i9).build();
                        return proceed;
                    }
                }).cache(new Cache(file, 52428800L)).build();
                StrictMode.VmPolicy.Builder builder2 = new StrictMode.VmPolicy.Builder();
                StrictMode.setVmPolicy(builder2.build());
                builder2.detectFileUriExposure();
                return;
            } catch (NoSuchAlgorithmException e10) {
                e = e10;
                e.printStackTrace();
                HostnameVerifier hostnameVerifier3 = new HostnameVerifier() {
                    @Override
                    public boolean verify(String str, SSLSession sSLSession) {
                        return true;
                    }
                };
                file = new File(getExternalFilesDir(null).getPath());
                if (file.exists()) {
                }
                OkHttpClient.Builder hostnameVerifier22 = new OkHttpClient.Builder().sslSocketFactory(sSLContext.getSocketFactory(), x509TrustManager).hostnameVerifier(hostnameVerifier3);
                TimeUnit timeUnit22 = TimeUnit.SECONDS;
                hostnameVerifier22.connectTimeout(20L, timeUnit22).writeTimeout(20L, timeUnit22).readTimeout(20L, timeUnit22).addInterceptor(new Interceptor() {
                    @Override
                    public Response intercept(Interceptor.Chain chain) {
                        Response proceed = chain.proceed(chain.request());
                        int i9 = Utils.isDeviceOffline(applicationContext) ? 100 : 86400;
                        proceed.newBuilder().removeHeader(HttpHeaders.HEAD_KEY_PRAGMA).removeHeader(HttpHeaders.HEAD_KEY_CACHE_CONTROL).header(HttpHeaders.HEAD_KEY_CACHE_CONTROL, "public, max-age=" + i9).build();
                        return proceed;
                    }
                }).cache(new Cache(file, 52428800L)).build();
                StrictMode.VmPolicy.Builder builder22 = new StrictMode.VmPolicy.Builder();
                StrictMode.setVmPolicy(builder22.build());
                builder22.detectFileUriExposure();
                return;
            }
            builder22.detectFileUriExposure();
            return;
        } catch (Exception e11) {
            e11.getMessage();
            return;
        }
        HostnameVerifier hostnameVerifier32 = new HostnameVerifier() {
            @Override
            public boolean verify(String str, SSLSession sSLSession) {
                return true;
            }
        };
        file = new File(getExternalFilesDir(null).getPath());
        if (file.exists()) {
            file.mkdirs();
        }
        OkHttpClient.Builder hostnameVerifier222 = new OkHttpClient.Builder().sslSocketFactory(sSLContext.getSocketFactory(), x509TrustManager).hostnameVerifier(hostnameVerifier32);
        TimeUnit timeUnit222 = TimeUnit.SECONDS;
        hostnameVerifier222.connectTimeout(20L, timeUnit222).writeTimeout(20L, timeUnit222).readTimeout(20L, timeUnit222).addInterceptor(new Interceptor() {
            @Override
            public Response intercept(Interceptor.Chain chain) {
                Response proceed = chain.proceed(chain.request());
                int i9 = Utils.isDeviceOffline(applicationContext) ? 100 : 86400;
                proceed.newBuilder().removeHeader(HttpHeaders.HEAD_KEY_PRAGMA).removeHeader(HttpHeaders.HEAD_KEY_CACHE_CONTROL).header(HttpHeaders.HEAD_KEY_CACHE_CONTROL, "public, max-age=" + i9).build();
                return proceed;
            }
        }).cache(new Cache(file, 52428800L)).build();
        StrictMode.VmPolicy.Builder builder222 = new StrictMode.VmPolicy.Builder();
        StrictMode.setVmPolicy(builder222.build());
    }
}