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("¬Visible=").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);
}
}
}