速狼加速器 v1.3.05版本的 MD5 值为:16b5e8af5c3774d85c1aa8bd4f624d0b
以下内容为反编译后的 ChooseConfig.java 源代码,内容仅作参考
package com.lzz.youtu.common;
import android.text.TextUtils;
import com.lzz.youtu.data.GsonUtil;
import com.lzz.youtu.data.LogUtils;
import com.lzz.youtu.pojo.Nodes;
import com.lzz.youtu.utils.Utils;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class ChooseConfig {
static String CUR_SUPPORT_VERSION = "2.0";
public String m_mid;
public AccelerateMode m_mode;
public AccelerateRang m_rang;
public List<Nodes.NodeBean> m_destNodes = new LinkedList();
public List<String> m_allowedApp = new LinkedList();
public List<String> m_disallowedApp = new LinkedList();
public int selDestNodeCnt = 3;
public int selDirctConCnt = 1;
public int selTraintNodeCnt = 4;
public int retainDestNodeCnt = 2;
public int retainConnectionsCnt = 3;
public TestDomainConfig testDomainConfig = new TestDomainConfig();
public int m_userId = 0;
public boolean m_enableTrack = false;
public void setVpnNodeConfigJson(String str, String str2) {
ArrayList<String> arrayList;
String value;
if (TextUtils.isEmpty(str) || (arrayList = GsonUtil.getInstance().getjsonArrString(str, "config_list")) == null) {
return;
}
String str3 = null;
Iterator<String> it2 = arrayList.iterator();
while (true) {
if (!it2.hasNext()) {
break;
}
String next = it2.next();
String value2 = GsonUtil.getInstance().getValue(next, "version");
if (TextUtils.isEmpty(value2)) {
return;
}
if (value2.equals(CUR_SUPPORT_VERSION)) {
str3 = GsonUtil.getInstance().getValue(next, "config");
readTestDomainConfig(next);
break;
}
}
if (TextUtils.isEmpty(str3)) {
return;
}
LogUtils.eLog(getClass().getName(), "setVpnNodeConfigJson: [nodeType]:" + str2 + "[config]:" + str);
if (TextUtils.isEmpty(str3)) {
value = GsonUtil.getInstance().getValue(str3, "0");
if (TextUtils.isEmpty(value)) {
return;
}
} else {
value = GsonUtil.getInstance().getValue(str3, str2);
if (TextUtils.isEmpty(value)) {
value = GsonUtil.getInstance().getValue(str3, "0");
if (TextUtils.isEmpty(value)) {
return;
}
}
}
this.selDestNodeCnt = Utils.string2Int(GsonUtil.getInstance().getValue(value, "sel_dest_node_cnt"), 3);
this.selDirctConCnt = Utils.string2Int(GsonUtil.getInstance().getValue(value, "sel_direct_con_cnt"), 1);
this.selTraintNodeCnt = Utils.string2Int(GsonUtil.getInstance().getValue(value, "sel_traint_node_cnt"), 4);
this.retainDestNodeCnt = Utils.string2Int(GsonUtil.getInstance().getValue(value, "retain_dest_node_cnt"), 2);
this.retainConnectionsCnt = Utils.string2Int(GsonUtil.getInstance().getValue(value, "retain_connections_cnt"), 3);
LogUtils.eLog(getClass().getName(), "setVpnNodeConfigJson: [selDestNodeCnt]:" + this.selDestNodeCnt + "[selDirctConCnt]:" + this.selDirctConCnt + "[selTraintNodeCnt]:" + this.selTraintNodeCnt + "[retainDestNodeCnt]:" + this.retainDestNodeCnt + "[retainConnectionsCnt]:" + this.retainConnectionsCnt);
}
private void readTestDomainConfig(String str) {
ArrayList<String> arrayList;
if (TextUtils.isEmpty(GsonUtil.getInstance().getValue(str, "test_domain_config"))) {
return;
}
String value = GsonUtil.getInstance().getValue(str, "domain");
if (TextUtils.isEmpty(value) || (arrayList = GsonUtil.getInstance().getjsonArrString(str, "dns")) == null || arrayList.isEmpty()) {
return;
}
this.testDomainConfig.setDomain(value);
this.testDomainConfig.setDns(arrayList);
}
public class TestDomainConfig {
public List<String> dns;
public String domain = "www.zhenjierbashi.com";
public TestDomainConfig() {
LinkedList linkedList = new LinkedList();
this.dns = linkedList;
linkedList.add("8.8.8.8");
this.dns.add("8.8.4.4");
}
void setDomain(String str) {
if (TextUtils.isEmpty(str)) {
return;
}
this.domain = str;
}
void setDns(List<String> list) {
if (list == null || list.isEmpty()) {
return;
}
this.dns.clear();
this.dns.addAll(list);
}
}
}