智能工厂.apk(点击下载) / d.java


package cn.jiguang.bb;

import android.content.Context;
import android.os.Build;
import android.text.TextUtils;
import android.util.Base64;
import cn.jiguang.aq.c;
import cn.jiguang.f.a;
import cn.jiguang.f.f;
import cn.jiguang.g.b;
import com.fasterxml.jackson.core.util.MinimalPrettyPrinter;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.UUID;

public class d {
    private static List<String> a = new ArrayList();

    static {
        a.add("358673013795895");
        a.add("004999010640000");
        a.add("00000000000000");
        a.add("000000000000000");
    }

    private static String a() {
        String b = a.b();
        if (b == null) {
            return null;
        }
        return b + ".push_udid";
    }

    public static String a(Context context) {
        String str = (String) b.a(context, cn.jiguang.g.a.D());
        if (!TextUtils.isEmpty(str)) {
            str = new String(Base64.decode(str, 2));
        }
        if (a(str)) {
            return str;
        }
        String b = b(context);
        if (!TextUtils.isEmpty(b)) {
            b.a(context, cn.jiguang.g.a.D().a(Base64.encodeToString(b.getBytes(), 2)));
        }
        return b;
    }

    private static boolean a(String str) {
        if (!f.h(str) || str.length() < 10) {
            return false;
        }
        for (String str2 : a) {
            if (str.startsWith(str2)) {
                return false;
            }
        }
        return true;
    }

    private static String b(Context context) {
        try {
            String str = a.a(context).p;
            if (a(str)) {
                return str;
            }
            String str2 = a.a(context).i;
            if (a(str2) && !"9774d56d682e549c".equals(str2.toLowerCase(Locale.getDefault()))) {
                return str2;
            }
            String c = c(context);
            return a(c) ? c : "";
        } catch (Exception e) {
            c.c("UDIDUtils", "", e);
            String d = d(context);
            return a(d) ? d : "";
        }
    }

    private static String c(Context context) {
        String str = "";
        if (cn.jiguang.d.a.l(context)) {
            str = a.j(context);
        }
        if (a(str)) {
            return str;
        }
        String d = d(context);
        return d == null ? MinimalPrettyPrinter.DEFAULT_ROOT_VALUE_SEPARATOR : d;
    }

    private static String d(Context context) {
        c.c("UDIDUtils", "Action:getSavedUuid");
        String str = (String) b.b(context, cn.jiguang.g.a.S());
        if (!f.a(str)) {
            return str;
        }
        if (!a.a()) {
            return f(context);
        }
        String str2 = (String) b.a(context, cn.jiguang.g.a.E());
        return TextUtils.isEmpty(str2) ? (Build.VERSION.SDK_INT >= 23 && (!a.c(context, "android.permission.WRITE_EXTERNAL_STORAGE") || !a.c(context, "android.permission.READ_EXTERNAL_STORAGE"))) ? f(context) : e(context) : str2;
    }

    private static String e(Context context) {
        String a2 = a();
        File file = !f.a(a2) ? new File(a2) : null;
        String d = cn.jiguang.f.c.d(file);
        if (!TextUtils.isEmpty(d)) {
            b.a(context, cn.jiguang.g.a.E().a(d));
            c.e("UDIDUtils", "Got sdcard file saved udid - " + d);
            return d;
        }
        String k = f.k(UUID.nameUUIDFromBytes((System.currentTimeMillis() + "").getBytes()).toString());
        b.a(context, cn.jiguang.g.a.E().a(k));
        cn.jiguang.f.c.a(file, k);
        return k;
    }

    private static String f(Context context) {
        cn.jiguang.g.a<String> S = cn.jiguang.g.a.S();
        String str = (String) b.b(context, S);
        if (str != null) {
            return str;
        }
        String uuid = UUID.randomUUID().toString();
        b.a(context, S.a(uuid));
        return uuid;
    }
}