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

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


package com.admogo;

import android.content.Context;
import android.net.wifi.WifiManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class AdsMOGOAction {
    private static final String ADSMOGO = "AdsMogo Action SDK";
    private static final int TIMEOUT_TIME = 30000;
    private static Context con = null;
    private static String pid = null;
    private static final String urlAction0 = "http://cfg.adsmogo.com/Action.ashx?cid=%s&uid=%s";
    private static final String urlAction1 = "http://cfg.adsmogo.net/Action.ashx?cid=%s&uid=%s";
    private static final String urlAction2 = "http://cfg.adsmogo.org/Action.ashx?cid=%s&uid=%s";
    private static final String urlAction3 = "http://cfg.adsmogo.mobi/Action.ashx?cid=%s&uid=%s";
    private static final String[] urlAction = {urlAction0, urlAction1, urlAction2, urlAction3};
    private static int testIndex = 0;
    private static int random = 0;
    private static String deviceIDHash = "";
    private static boolean isSend = false;
    private static Runnable actionRunnable = new v();

    public static void action(Context context, String str) {
        con = context;
        pid = str;
        String deviceID = getDeviceID(context);
        deviceIDHash = deviceID;
        deviceIDHash = convertToHex(deviceID);
        random = (int) (Math.random() * 3.0d);
        if (context.getSharedPreferences(ADSMOGO, 0).getBoolean("is_aciton", true)) {
            new Thread(actionRunnable).start();
        }
    }

    public static String convertToHex(String str) {
        try {
            if (!TextUtils.isEmpty(str)) {
                if (str.equals("000000000000000")) {
                    return String.valueOf(str) + str + "00";
                }
                byte[] digest = MessageDigest.getInstance("MD5").digest(str.getBytes());
                StringBuffer stringBuffer = new StringBuffer();
                int i = 0;
                while (true) {
                    int i2 = i;
                    if (i2 >= digest.length) {
                        return stringBuffer.toString();
                    }
                    int i3 = digest[i2];
                    if (i3 < 0) {
                        i3 += 256;
                    }
                    if (i3 < 16) {
                        stringBuffer.append("0");
                    }
                    stringBuffer.append(Integer.toHexString(i3));
                    i = i2 + 1;
                }
            }
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return "";
    }

    public static String getDeviceID(Context context) {
        String str;
        TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService("phone");
        try {
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (isPermission(context, "android.permission.READ_PHONE_STATE")) {
            str = telephonyManager.getDeviceId();
            if (TextUtils.isEmpty(str)) {
                return str;
            }
            Log.w(ADSMOGO, "No IMEI");
            String iDByMAC = getIDByMAC(context);
            if (iDByMAC != null) {
                return iDByMAC;
            }
            Log.w(ADSMOGO, "Failed to take mac as IMEI");
            return "";
        }
        str = "";
        if (TextUtils.isEmpty(str)) {
        }
    }

    private static String getIDByMAC(Context context) {
        try {
            return ((WifiManager) context.getSystemService("wifi")).getConnectionInfo().getMacAddress();
        } catch (Exception e) {
            Log.i(ADSMOGO, "Could not read MAC, forget to include ACCESS_WIFI_STATE permission?", e);
            return null;
        }
    }

    public static boolean isPermission(Context context, String str) {
        return context.getPackageManager().checkPermission(str, context.getPackageName()) == 0;
    }
}