百度手机卫士 v8.1.5版本的 MD5 值为:15af71eae74e2f2b5b9f845fe77a4804
以下内容为反编译后的 aba.java 源代码,内容仅作参考
package dxoptimizer;
import android.content.Context;
import android.database.Cursor;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.text.TextUtils;
import java.util.HashMap;
import java.util.Map;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.conn.scheme.PlainSocketFactory;
import org.apache.http.conn.scheme.Scheme;
import org.apache.http.conn.scheme.SchemeRegistry;
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.client.DefaultHttpRequestRetryHandler;
import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpProtocolParams;
public class aba {
private static final String a = aba.class.getName();
private static DefaultHttpClient b;
public static synchronized void a() {
synchronized (aba.class) {
if (b != null) {
b.getConnectionManager().shutdown();
b = null;
}
}
}
public static synchronized DefaultHttpClient b() {
DefaultHttpClient defaultHttpClient;
synchronized (aba.class) {
if (b != null) {
defaultHttpClient = b;
} else {
SchemeRegistry schemeRegistry = new SchemeRegistry();
schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
schemeRegistry.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443));
BasicHttpParams basicHttpParams = new BasicHttpParams();
b = new DefaultHttpClient(new ThreadSafeClientConnManager(basicHttpParams, schemeRegistry), basicHttpParams);
HttpConnectionParams.setSoTimeout(b.getParams(), 30000);
HttpConnectionParams.setConnectionTimeout(b.getParams(), 30000);
b.getParams().setIntParameter("http.protocol.max-redirects", 10);
HttpClientParams.setCookiePolicy(b.getParams(), "compatibility");
HttpProtocolParams.setUserAgent(b.getParams(), "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110628 Ubuntu/10.04 (lucid) Firefox/3.6.18");
b.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(3, true));
defaultHttpClient = b;
}
}
return defaultHttpClient;
}
public static void a(DefaultHttpClient defaultHttpClient, Map map) {
String str;
int i;
String str2;
String str3;
if (map != null) {
if (map != null) {
str2 = (String) map.get("host");
i = map.containsKey("port") ? ((Number) map.get("port")).intValue() : -1;
str3 = (String) map.get("user");
str = (String) map.get("password");
} else {
str = null;
i = -1;
str2 = null;
str3 = null;
}
if (!TextUtils.isEmpty(str2) && i > 0) {
aai.c(a, "connecting with proxy, addr:" + str2 + ", port:" + i);
defaultHttpClient.getParams().setParameter("http.route.default-proxy", new HttpHost(str2, i, "http"));
if (!TextUtils.isEmpty(str3) && !TextUtils.isEmpty(str)) {
defaultHttpClient.getCredentialsProvider().setCredentials(new AuthScope(str2, i), new UsernamePasswordCredentials(str3, str));
return;
} else {
defaultHttpClient.getCredentialsProvider().clear();
return;
}
}
defaultHttpClient.getParams().setParameter("http.route.default-proxy", null);
defaultHttpClient.getCredentialsProvider().clear();
}
}
public static Map a(Context context) {
Cursor cursor;
Uri parse = Uri.parse("content://telephony/carriers/preferapn");
NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
if (activeNetworkInfo != null && activeNetworkInfo.getType() == 0) {
try {
cursor = context.getContentResolver().query(parse, null, null, null, null);
if (cursor != null) {
try {
try {
if (cursor.moveToFirst()) {
final String string = cursor.getString(cursor.getColumnIndex("proxy"));
final int i = cursor.getInt(cursor.getColumnIndex("port"));
final String string2 = cursor.getString(cursor.getColumnIndex("user"));
final String string3 = cursor.getString(cursor.getColumnIndex("password"));
HashMap hashMap = new HashMap() {
{
put("host", string);
put("port", Integer.valueOf(i));
put("user", string2);
put("password", string3);
}
};
if (cursor == null) {
return hashMap;
}
cursor.close();
return hashMap;
}
} catch (Exception e) {
e = e;
e.printStackTrace();
if (cursor != null) {
cursor.close();
}
return null;
}
} catch (Throwable th) {
th = th;
if (cursor != null) {
cursor.close();
}
throw th;
}
}
if (cursor != null) {
cursor.close();
}
} catch (Exception e2) {
e = e2;
cursor = null;
} catch (Throwable th2) {
th = th2;
cursor = null;
if (cursor != null) {
}
throw th;
}
}
return null;
}
}