百度手机卫士 v8.1.5版本的 MD5 值为:15af71eae74e2f2b5b9f845fe77a4804

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


package dxoptimizer;

import android.content.Context;
import java.net.URLEncoder;

public class apn {
    public static String a(long j) {
        String str = alm.a;
        if ("test".equals(str)) {
            return a(ami.a(), "http://sandbox.sjws.baidu.com:8080/new_recommend/1.1/get", j);
        }
        if ("prod".equals(str)) {
            return a(ami.a(), "http://nrc.dxsvr.com/1.1/get", j);
        }
        if ("dev".equals(str)) {
            return a(ami.a(), "http://rec.in.tira.cn:8000/recommend/get", j);
        }
        return a(ami.a(), "http://nrc.dxsvr.com/1.1/get", j);
    }

    private static String a(String str) {
        if (str == null) {
            return null;
        }
        return URLEncoder.encode(str);
    }

    private static String a(Context context, String str, long j) {
        String a = xo.a(context);
        StringBuilder sb = new StringBuilder(str);
        if (str.contains("?")) {
            sb.append("&").append(a);
        } else {
            sb.append("?").append(a);
        }
        sb.append("&nonce=").append(j);
        sb.append("&platform=0");
        sb.append("&lp=").append(aro.a(context));
        sb.append("&lastModified=").append(are.c());
        sb.append("&versionCode=").append(a(amr.a()));
        sb.append("&location=").append(a(ami.d()));
        sb.append("&pubkey=").append(a());
        int indexOf = sb.indexOf("\n");
        if (indexOf > 0) {
            sb.setLength(indexOf);
        }
        String sb2 = sb.toString();
        if (alm.c) {
            alw.b("url=" + sb2);
        }
        return sb2;
    }

    private static String a() {
        byte[] a = arq.a(ali.a(ani.a(), 0));
        if (a == null) {
            return "";
        }
        byte[] bArr = new byte[4];
        for (int i = 0; i < 4; i++) {
            bArr[i] = a[i];
        }
        return ali.b(bArr, 8);
    }
}