13Poker by gametower unlimited gems v0.4版本的 MD5 值为:51324fc0f195c34821074948ab266846

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


package com.adeco.analytics;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.text.TextUtils;
import android.util.Log;
import com.adsdk.sdk.Const;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.net.ssl.HttpsURLConnection;
import org.apache.http.HttpVersion;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnManagerParams;
import org.apache.http.conn.params.ConnPerRoute;
import org.apache.http.conn.routing.HttpRoute;
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.conn.ssl.X509HostnameVerifier;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.conn.SingleClientConnManager;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpProtocolParams;
public class g extends Thread {
    private static final String f12a = "http://s.net2share.com:8888/beacon";
    private static final int b = 30000;
    private static final int c = 60000;
    private static final DefaultHttpClient d = a();
    private final Context e;
    private final a f;

    public static boolean a(Context context) {
        NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
        return (activeNetworkInfo == null || activeNetworkInfo.getState() == NetworkInfo.State.DISCONNECTED || activeNetworkInfo.getState() == NetworkInfo.State.DISCONNECTING) ? false : true;
    }

    public static DefaultHttpClient a() {
        try {
            X509HostnameVerifier x509HostnameVerifier = SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER;
            BasicHttpParams basicHttpParams = new BasicHttpParams();
            SchemeRegistry schemeRegistry = new SchemeRegistry();
            SSLSocketFactory socketFactory = SSLSocketFactory.getSocketFactory();
            socketFactory.setHostnameVerifier(x509HostnameVerifier);
            HttpsURLConnection.setDefaultHostnameVerifier(x509HostnameVerifier);
            HttpProtocolParams.setVersion(basicHttpParams, HttpVersion.HTTP_1_1);
            HttpProtocolParams.setContentCharset(basicHttpParams, Const.ENCODING);
            schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
            schemeRegistry.register(new Scheme("https", socketFactory, 443));
            SingleClientConnManager singleClientConnManager = new SingleClientConnManager(basicHttpParams, schemeRegistry);
            HttpConnectionParams.setConnectionTimeout(basicHttpParams, b);
            HttpConnectionParams.setSoTimeout(basicHttpParams, c);
            HttpConnectionParams.setStaleCheckingEnabled(basicHttpParams, true);
            basicHttpParams.setParameter("http.protocol.handle-redirects", true);
            ConnManagerParams.setMaxConnectionsPerRoute(basicHttpParams, new ConnPerRoute() {
                public int getMaxForRoute(HttpRoute httpRoute) {
                    return 20;
                }
            });
            ConnManagerParams.setTimeout(basicHttpParams, 60000L);
            return new DefaultHttpClient(singleClientConnManager, basicHttpParams);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }

    public g(Context context) {
        this.e = context.getApplicationContext();
        this.f = f.a(context);
    }

    private static Map<String, String> a(String str) {
        String[] split = TextUtils.split(str, "&");
        HashMap hashMap = new HashMap();
        for (String str2 : split) {
            String[] split2 = TextUtils.split(str2, "=");
            if (split2.length > 1) {
                hashMap.put(split2[0], split2[1]);
            }
        }
        return hashMap;
    }

    private HttpClient b() {
        return d;
    }

    @Override
    public void run() {
        synchronized (g.class) {
            List<d> a2 = this.f.a();
            if (a2 == null) {
                return;
            }
            for (d dVar : a2) {
                Map<String, String> a3 = a(dVar.d);
                HttpPost httpPost = new HttpPost(f12a);
                ArrayList arrayList = new ArrayList();
                for (Map.Entry<String, String> entry : a3.entrySet()) {
                    arrayList.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
                }
                if (!a(this.e)) {
                    break;
                }
                long currentTimeMillis = System.currentTimeMillis();
                try {
                    httpPost.setEntity(new UrlEncodedFormEntity(arrayList));
                    int i = 5;
                    while (true) {
                        int i2 = i - 1;
                        if (i <= 0) {
                            break;
                        }
                        try {
                            HttpClient b2 = b();
                            httpPost.setHeader("User-Agent", System.getProperty("http.agent"));
                            httpPost.removeHeaders("Connection");
                            b2.execute(httpPost);
                            Log.d("Analytics", "hit sended for " + (System.currentTimeMillis() - currentTimeMillis));
                            i = 0;
                        } catch (NullPointerException e) {
                            i = i2;
                        }
                    }
                    this.f.a(Collections.singletonList(dVar));
                } catch (IOException e2) {
                    Log.d("Analytics", "hit failed for " + (System.currentTimeMillis() - currentTimeMillis));
                    this.f.a(Collections.singletonList(dVar));
                } catch (ClientProtocolException e3) {
                    Log.d("Analytics", "hit failed for " + (System.currentTimeMillis() - currentTimeMillis));
                    this.f.a(Collections.singletonList(dVar));
                }
            }
        }
    }
}