百度手机卫士 v8.8.0版本的 MD5 值为:a85894a6923c8a39f0c3a3a686ad7443

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


package dxoptimizer;

import android.content.Context;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.text.TextUtils;
import com.baidu.sapi2.utils.SapiUtils;
import com.baidu.security.plugin.alarm.AlarmUtil;
import com.dianxinos.optimizer.utils.HttpUtils;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class dck {
    private Context a;

    public dck(Context context) {
        this.a = context.getApplicationContext();
    }

    public void a(boolean z) {
        a(z, (String) null);
    }

    public void a(boolean z, String str) {
        if (hzq.c(this.a)) {
            SQLiteDatabase a = dbu.a(this.a);
            dce dceVar = new dce(this.a, a);
            if (TextUtils.isEmpty(str)) {
                long b = dceVar.b("https://mobsec-aip.baidu.com/aip/official/chk?detail=true");
                if (z && System.currentTimeMillis() - b < AlarmUtil.DAY) {
                    return;
                }
            }
            try {
                String a2 = a(str);
                if (a2 == null) {
                    return;
                }
                ibo.a(4100);
                String a3 = HttpUtils.a(this.a, "https://mobsec-aip.baidu.com/aip/official/chk?detail=true", a2);
                hyt hytVar = new hyt();
                JSONArray b2 = hytVar.b(a3);
                if (hytVar.a()) {
                    new dbw(this.a, a).a(a(b2));
                    dceVar.a("https://mobsec-aip.baidu.com/aip/official/chk?detail=true", System.currentTimeMillis(), null);
                    Intent intent = new Intent("com.dianxinos.optimizer.appmanager.action.COUNT_CHANGED");
                    intent.setPackage(this.a.getPackageName());
                    icn.a(this.a, intent);
                    fxe.a(this.a).a(true);
                }
            } catch (HttpUtils.HttpStatusException e) {
            } catch (IOException e2) {
            } catch (JSONException e3) {
            } finally {
                ibo.a();
            }
        }
    }

    public dbv a(avn avnVar) {
        dbv dbvVar = null;
        if (hzq.c(this.a)) {
            new dce(this.a, dbu.a(this.a));
            try {
                String b = b(avnVar);
                if (b != null) {
                    ibo.a(4101);
                    String a = HttpUtils.a(this.a, "https://mobsec-aip.baidu.com/aip/official/chk?detail=true", b);
                    hyt hytVar = new hyt();
                    JSONArray b2 = hytVar.b(a);
                    if (hytVar.a()) {
                        dbvVar = a(b2, avnVar);
                    }
                }
            } catch (HttpUtils.HttpStatusException e) {
            } catch (IOException e2) {
            } catch (JSONException e3) {
            } finally {
                ibo.a();
            }
        }
        return dbvVar;
    }

    private String b(avn avnVar) {
        JSONArray jSONArray = new JSONArray();
        String b = avnVar.b(this.a);
        long c = avnVar.c(this.a);
        if (b == null || c == 0) {
            return null;
        }
        JSONObject jSONObject = new JSONObject();
        jSONObject.put("pkg", avnVar.d());
        jSONObject.put(SapiUtils.KEY_QR_LOGIN_SIGN, b);
        jSONObject.put("ver", avnVar.h());
        jSONObject.put("vername", avnVar.g());
        jSONObject.put("signmd5", c);
        jSONArray.put(jSONObject);
        if (jSONArray.length() <= 0) {
            return null;
        }
        JSONObject jSONObject2 = new JSONObject();
        jSONObject2.put("apps", jSONArray);
        return jSONObject2.toString();
    }

    private String a(String str) {
        ArrayList<avn> arrayList = new ArrayList();
        if (TextUtils.isEmpty(str)) {
            arrayList.addAll(avo.a(this.a).d());
        } else {
            arrayList.add(avo.a(this.a).b(str));
        }
        JSONArray jSONArray = new JSONArray();
        for (avn avnVar : arrayList) {
            if (!avnVar.p() || avnVar.q()) {
                String b = avnVar.b(this.a);
                long c = avnVar.c(this.a);
                if (b != null && c != 0) {
                    JSONObject jSONObject = new JSONObject();
                    jSONObject.put("pkg", avnVar.d());
                    jSONObject.put(SapiUtils.KEY_QR_LOGIN_SIGN, b);
                    jSONObject.put("ver", avnVar.h());
                    jSONObject.put("vername", avnVar.g());
                    jSONObject.put("signmd5", c);
                    jSONArray.put(jSONObject);
                }
            }
        }
        if (jSONArray.length() <= 0) {
            return null;
        }
        JSONObject jSONObject2 = new JSONObject();
        jSONObject2.put("apps", jSONArray);
        return jSONObject2.toString();
    }

    private dbv a(JSONArray jSONArray, avn avnVar) {
        int length = jSONArray.length();
        for (int i = 0; i < length; i++) {
            JSONObject jSONObject = jSONArray.getJSONObject(i);
            String string = jSONObject.getString("pkg");
            if (avnVar != null && string.equals(avnVar.d())) {
                dbv dbvVar = new dbv();
                dbvVar.a = jSONObject.getString("pkg");
                dbvVar.f = avnVar.m();
                dbvVar.h = jSONObject.optDouble("signrate", 0.0d);
                if (!jSONObject.isNull("isofficial")) {
                    if (jSONObject.getBoolean("isofficial")) {
                        dbvVar.g = 1;
                    } else {
                        dbvVar.g = 2;
                    }
                } else {
                    dbvVar.g = -1;
                }
                dbvVar.i = false;
                if (dbvVar.g == 2 && !jSONObject.isNull("official")) {
                    JSONObject jSONObject2 = jSONObject.getJSONObject("official");
                    if (jSONObject2.getBoolean("isofficial")) {
                        dbvVar.i = true;
                        dbvVar.j = jSONObject2.getString("downurl");
                        dbvVar.k = jSONObject2.getLong("size");
                        dbvVar.l = jSONObject2.getInt("vercode");
                        dbvVar.m = jSONObject2.getLong("signmd5");
                        dbvVar.n = jSONObject2.getString(SapiUtils.KEY_QR_LOGIN_SIGN);
                        dbvVar.o = jSONObject2.optDouble("signrate", 0.0d);
                        return dbvVar;
                    }
                    return dbvVar;
                }
                return dbvVar;
            }
        }
        return null;
    }

    private List<dbv> a(JSONArray jSONArray) {
        avo a = avo.a(this.a);
        ArrayList arrayList = new ArrayList();
        int length = jSONArray.length();
        for (int i = 0; i < length; i++) {
            JSONObject jSONObject = jSONArray.getJSONObject(i);
            avn c = a.c(jSONObject.getString("pkg"));
            if (c != null) {
                dbv dbvVar = new dbv();
                dbvVar.a = jSONObject.getString("pkg");
                dbvVar.f = c.m();
                dbvVar.h = jSONObject.optDouble("signrate", 0.0d);
                if (!jSONObject.isNull("isofficial")) {
                    if (jSONObject.getBoolean("isofficial")) {
                        dbvVar.g = 1;
                    } else {
                        dbvVar.g = 2;
                    }
                } else {
                    dbvVar.g = -1;
                }
                dbvVar.i = false;
                if (dbvVar.g == 2 && !jSONObject.isNull("official")) {
                    JSONObject jSONObject2 = jSONObject.getJSONObject("official");
                    if (jSONObject2.getBoolean("isofficial")) {
                        dbvVar.i = true;
                        dbvVar.j = jSONObject2.getString("downurl");
                        dbvVar.k = jSONObject2.getLong("size");
                        dbvVar.l = jSONObject2.getInt("vercode");
                        dbvVar.m = jSONObject2.getLong("signmd5");
                        dbvVar.n = jSONObject2.getString(SapiUtils.KEY_QR_LOGIN_SIGN);
                        dbvVar.o = jSONObject2.optDouble("signrate", 0.0d);
                    }
                }
                arrayList.add(dbvVar);
            }
        }
        return arrayList;
    }
}