360手机助手 v5.2.50版本的 MD5 值为:087c008db9e518cd556c792742e6830c

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


package com.qihoo.d;

import android.content.Context;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.Build;
import android.text.TextUtils;
import com.android.downloader.core.DownloadWork;
import com.qihoo.download.base.QHDownloadResInfo;
import com.qihoo.express.mini.model.EMessage;
import com.qihoo.utils.af;
import com.qihoo.utils.ap;
import com.qihoo.utils.bn;
import com.qihoo.utils.l;
import com.tencent.open.SocialConstants;
import java.util.HashMap;

public class b {
    public static String a(Context context, QHDownloadResInfo qHDownloadResInfo, int i) {
        if (i >= 1) {
            return qHDownloadResInfo.k;
        }
        String str = "http://res.qhsetup.com/360baohe/download.php?resurl=" + ap.a(qHDownloadResInfo.a()) + a(context, qHDownloadResInfo) + "&mysrc=appstore";
        if (bn.c()) {
            String a = qHDownloadResInfo.a();
            if (!TextUtils.isEmpty(a) && a.contains("360box_update.apk")) {
                bn.a(af.a(qHDownloadResInfo.aj) == 0);
            }
        }
        if (bn.c() && qHDownloadResInfo.al == 1 && qHDownloadResInfo.v() != 5) {
            Uri parse = Uri.parse(str);
            bn.a(!TextUtils.isEmpty(parse.getQueryParameter("si")), str);
            bn.a(TextUtils.isEmpty(parse.getQueryParameter("curpage")) ? false : true, str);
        }
        return str;
    }

    public static HashMap a(QHDownloadResInfo qHDownloadResInfo, String str) {
        Uri parse = Uri.parse(str);
        if (parse != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("si", parse.getQueryParameter("si"));
            hashMap.put("package", qHDownloadResInfo.ad);
            hashMap.put(SocialConstants.PARAM_TYPE, "" + b(qHDownloadResInfo));
            hashMap.put("fm", parse.getQueryParameter("curpage"));
            hashMap.put("lastfm", parse.getQueryParameter("prepage"));
            hashMap.put("pos", parse.getQueryParameter("pos"));
            hashMap.put("at", parse.getQueryParameter("at"));
            hashMap.put("rid", parse.getQueryParameter("rid"));
            hashMap.put("label", parse.getQueryParameter("label"));
            hashMap.put("searchid", parse.getQueryParameter("searchid"));
            hashMap.put("kw", parse.getQueryParameter("kw"));
            hashMap.put("inp", parse.getQueryParameter("inp"));
            hashMap.put("prelabel", parse.getQueryParameter("prelabel"));
            hashMap.put("pushid", parse.getQueryParameter("tid"));
            hashMap.put("notify", parse.getQueryParameter("notify"));
            hashMap.put("begin", parse.getQueryParameter("begin"));
            hashMap.put("re", parse.getQueryParameter("re"));
            String queryParameter = parse.getQueryParameter("isAd");
            boolean z = false;
            if (!TextUtils.isEmpty(queryParameter) && (queryParameter.compareToIgnoreCase("1") == 0 || queryParameter.compareToIgnoreCase("true") == 0)) {
                z = true;
            }
            hashMap.put("isAd", z ? "1" : "0");
            return hashMap;
        }
        return null;
    }

    private static int b(QHDownloadResInfo qHDownloadResInfo) {
        if (qHDownloadResInfo.al == 1) {
            if (qHDownloadResInfo.v() == 2) {
                return 2;
            }
            if (qHDownloadResInfo.v() == 5) {
                return 10;
            }
            if (qHDownloadResInfo.v() == 3) {
                return 4;
            }
            if (qHDownloadResInfo.v() == 4) {
                return a(qHDownloadResInfo.w());
            }
            return 1;
        }
        if (qHDownloadResInfo.al == 2) {
            return 7;
        }
        return qHDownloadResInfo.al;
    }

    private static int a(int i) {
        if (i == 2) {
            return 2;
        }
        if (i == 3) {
            return 4;
        }
        return 1;
    }

    private static String a(Context context, QHDownloadResInfo qHDownloadResInfo) {
        boolean d;
        int i;
        StringBuilder sb = new StringBuilder();
        sb.append("&m=").append(com.qihoo.productdatainfo.b.b.a(2)).append("&m2=").append(com.qihoo.productdatainfo.b.b.a(3));
        sb.append("&nt=").append(com.qihoo.utils.net.f.b());
        sb.append("&snt=").append(com.qihoo.utils.net.f.c());
        NetworkInfo a = com.qihoo.utils.net.f.a(true);
        sb.append("&ntt=").append(a != null ? a.getType() : -1);
        sb.append("&sntt=").append(a != null ? a.getSubtype() : -1);
        sb.append("&isWifi=").append(com.qihoo.utils.net.f.d(true) ? 1 : 0);
        sb.append("&isData=").append(com.qihoo.utils.net.f.f() ? 1 : 0);
        sb.append("&isMeter=").append(com.qihoo.utils.net.e.a() ? 1 : 0);
        sb.append("&canUseDataNet=").append(qHDownloadResInfo.i ? 1 : 0);
        sb.append("&isFront=").append(DownloadWork.isMainActivityFront);
        sb.append("&isUpdateSilentTask=").append(qHDownloadResInfo.V);
        sb.append("&notVisible=").append(qHDownloadResInfo.S);
        sb.append("&v=").append(com.qihoo.productdatainfo.b.b.a(4)).append("&ch=").append(com.qihoo.productdatainfo.b.b.a(7));
        sb.append("&br=").append(ap.a(Build.BRAND));
        sb.append("&md=").append(com.qihoo.productdatainfo.b.b.a(1));
        sb.append("&sk=").append(Build.VERSION.SDK_INT);
        sb.append("&sequenceId=").append(qHDownloadResInfo.a(false));
        String str = qHDownloadResInfo.ak;
        if (!TextUtils.isEmpty(str)) {
            sb.append("&mk=").append(ap.a(str));
        }
        try {
            d = l.d(context, qHDownloadResInfo.ad);
        } catch (Exception e) {
            if (bn.c()) {
                e.printStackTrace();
            }
        }
        if (qHDownloadResInfo.al == 1) {
            if (qHDownloadResInfo.S == 1 && d) {
                i = 6;
            } else if (qHDownloadResInfo.S == 1 && !d) {
                i = qHDownloadResInfo.a("ReservationInfoIsCount", 0) == 1 ? 1 : 6;
            } else if (qHDownloadResInfo.o() == 2 || qHDownloadResInfo.d()) {
                i = 3;
            } else if (qHDownloadResInfo.o() == 1) {
                i = 2;
            } else {
                if (d) {
                    i = 2;
                }
                i = 1;
            }
            sb.append("&at=").append(i);
            sb.append("&yyd=").append(qHDownloadResInfo.a("ReservationInfoIsReserve", 0) != 1);
            try {
                if (qHDownloadResInfo.al != 3) {
                    sb.append("&filetype=").append(SocialConstants.PARAM_AVATAR_URI);
                } else if (qHDownloadResInfo.al == 2) {
                    sb.append("&filetype=").append(EMessage.FILETYPE_MUSIC);
                } else if (qHDownloadResInfo.al == 1) {
                    if (qHDownloadResInfo.v() == 5) {
                        sb.append("&filetype=").append("plugin");
                    } else if (qHDownloadResInfo.v() == 3) {
                        sb.append("&filetype=").append("doc");
                    } else if (qHDownloadResInfo.v() == 4) {
                        if (qHDownloadResInfo.w() == 3) {
                            sb.append("&filetype=").append("doc");
                        } else {
                            sb.append("&filetype=").append("apk");
                        }
                    } else {
                        sb.append("&filetype=").append("apk");
                    }
                } else if (qHDownloadResInfo.al == 4) {
                    sb.append("&filetype=").append("doc");
                } else if (qHDownloadResInfo.al == 5) {
                    sb.append("&filetype=").append(EMessage.FILETYPE_VIDEO);
                } else if (qHDownloadResInfo.al == 9) {
                    sb.append("&filetype=").append("skin");
                }
            } catch (Exception e2) {
                if (bn.c()) {
                    e2.printStackTrace();
                }
            }
            if (qHDownloadResInfo.s != 0) {
                sb.append("&begin=").append(0);
            } else {
                sb.append("&begin=").append(1);
            }
            sb.append("&packagename=").append(qHDownloadResInfo.ad);
            sb.append("&versioncode=").append(qHDownloadResInfo.ah);
            sb.append("&mTotalBytes=").append(qHDownloadResInfo.t);
            if (qHDownloadResInfo.ao == null) {
                qHDownloadResInfo.ao = "";
            }
            sb.append(qHDownloadResInfo.ao);
            String sb2 = sb.toString();
            bn.b("BeforeDownloadStat", "param: " + sb2);
            return sb2;
        }
        if (qHDownloadResInfo.al == 9) {
            i = qHDownloadResInfo.o() == 1 ? 2 : 1;
        } else if (qHDownloadResInfo.d()) {
            i = 3;
        } else {
            if (d) {
                i = 2;
            }
            i = 1;
        }
        sb.append("&at=").append(i);
        sb.append("&yyd=").append(qHDownloadResInfo.a("ReservationInfoIsReserve", 0) != 1);
        if (qHDownloadResInfo.al != 3) {
        }
        if (qHDownloadResInfo.s != 0) {
        }
        sb.append("&packagename=").append(qHDownloadResInfo.ad);
        sb.append("&versioncode=").append(qHDownloadResInfo.ah);
        sb.append("&mTotalBytes=").append(qHDownloadResInfo.t);
        if (qHDownloadResInfo.ao == null) {
        }
        sb.append(qHDownloadResInfo.ao);
        String sb22 = sb.toString();
        bn.b("BeforeDownloadStat", "param: " + sb22);
        return sb22;
    }

    public static void a(QHDownloadResInfo qHDownloadResInfo) {
        if (qHDownloadResInfo.al == 1 && qHDownloadResInfo.S != 2 && qHDownloadResInfo.v() != 5 && TextUtils.isEmpty(com.qihoo.productdatainfo.b.c.i("http://res.qhsetup.com/360baohe/download.php?" + qHDownloadResInfo.ao, "curpage"))) {
            com.qihoo.utils.c.a.a().a(new RuntimeException(), "downloadStarParam " + qHDownloadResInfo.k + " " + qHDownloadResInfo.ao, 1);
        }
    }
}