鸠摩搜书官方正版 v1.7版本的 MD5 值为:01c9a20d2c415de3233d7f691829edf5

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


package net.youmi.android;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
import org.apache.http.HttpHost;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpProtocolParams;

final class aq {

    private static String f516a;

    private static String a() {
        if (f516a == null) {
            try {
                StringBuilder sb = new StringBuilder(256);
                sb.append("Mozilla/5.0 (Linux; U; Android ");
                sb.append(Build.VERSION.RELEASE);
                sb.append("; ");
                sb.append(g.a().toLowerCase());
                sb.append("; ");
                sb.append(g.b());
                sb.append(" Build/");
                sb.append(Build.ID);
                sb.append(") AppleWebkit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1");
                f516a = sb.toString();
            } catch (Exception e) {
                return "";
            }
        }
        return f516a;
    }

    public static String a(Context context) {
        NetworkInfo activeNetworkInfo;
        try {
            if (aw.a(context, "android.permission.ACCESS_NETWORK_STATE") && (activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo()) != null && activeNetworkInfo.isAvailable()) {
                if (activeNetworkInfo.getType() != 0) {
                    return "wifi";
                }
                String extraInfo = activeNetworkInfo.getExtraInfo();
                if (extraInfo == null) {
                    return "";
                }
                String lowerCase = extraInfo.trim().toLowerCase();
                return lowerCase.length() > 10 ? lowerCase.substring(0, 10) : lowerCase;
            }
        } catch (Exception e) {
        }
        return "";
    }

    public static DefaultHttpClient a(Context context, dj djVar) {
        BasicHttpParams basicHttpParams = new BasicHttpParams();
        HttpConnectionParams.setConnectionTimeout(basicHttpParams, 30000);
        HttpConnectionParams.setSoTimeout(basicHttpParams, 30000);
        HttpClientParams.setRedirecting(basicHttpParams, true);
        HttpProtocolParams.setUserAgent(basicHttpParams, a());
        HttpProtocolParams.setContentCharset(basicHttpParams, "utf-8");
        HttpProtocolParams.setHttpElementCharset(basicHttpParams, "utf-8");
        if (a(context).equals("cmwap")) {
            basicHttpParams.setParameter("http.route.default-proxy", new HttpHost("10.0.0.172", 80, null));
        }
        DefaultHttpClient defaultHttpClient = new DefaultHttpClient(basicHttpParams);
        defaultHttpClient.setRedirectHandler(new ar(djVar));
        return defaultHttpClient;
    }

    public static boolean b(Context context) {
        if (!aw.a(context, "android.permission.ACCESS_NETWORK_STATE")) {
            return true;
        }
        try {
            NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
            if (activeNetworkInfo != null) {
                if (activeNetworkInfo.isAvailable()) {
                    return true;
                }
            }
        } catch (Exception e) {
        }
        return false;
    }
}