正在查看: MX Player v1.97.8 应用的 ABTest.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: MX Player v1.97.8 应用的 ABTest.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.mxtech.videoplayer.ad.online.abtest;
import android.content.SharedPreferences;
import android.text.TextUtils;
import androidx.annotation.NonNull;
import com.m.x.player.pandora.box.StatusCodeException;
import com.mxtech.annotation.NotProguard;
import com.mxtech.utils.legal.IllegalRequestException;
import com.mxtech.videoplayer.ad.online.apiclient.UrlInvalidException;
import com.mxtech.videoplayer.ad.utils.Const;
import defpackage.b3d;
import defpackage.c0;
import defpackage.ca9;
import defpackage.d1j;
import defpackage.ef0;
import defpackage.gfh;
import defpackage.lj5;
import defpackage.nad;
import defpackage.pia;
import defpackage.q;
import defpackage.rg2;
import defpackage.s0b;
import defpackage.tj5;
import defpackage.ty7;
import defpackage.tya;
import defpackage.ung;
import defpackage.zna;
import java.io.IOException;
import java.security.SecureRandom;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.Locale;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONStringer;
public final class ABTest implements nad {
public static volatile ABTest o;
public static final HashMap<String, q[]> p = new HashMap<>();
public static final HashMap<String, q> q = new HashMap<>();
public static final Object r = new Object();
public volatile String f;
public volatile LinkedHashMap g;
public volatile boolean h;
public volatile String i;
public final SharedPreferences j;
public final Map<String, ?> k;
public volatile a l;
public final c[] n;
public final ExecutorService b = s0b.e();
public final HashMap<String, q> c = new HashMap<>();
public final HashMap<String, Integer> d = new HashMap<>();
public final Object m = new Object();
@NotProguard
public static class Config {
public SingleTest[] abGroup;
}
public static class LoaderError extends IOException {
}
@NotProguard
public static class SingleTest {
public String id;
public String strategy;
}
public static class a {
public LinkedList<b> a;
}
public static class b {
public final String a;
public final String b;
public final boolean c;
public final int d;
public b(JSONObject jSONObject) throws JSONException {
this.b = jSONObject.getString("testId");
this.a = jSONObject.getString("group");
this.c = (jSONObject.isNull("serverTest") ? 0 : jSONObject.optInt("serverTest", 0)) == 1;
this.d = jSONObject.isNull("bktId") ? -1 : jSONObject.optInt("bktId", -1);
}
}
public static class c {
public final q[] a;
public c(int[] iArr, q[] qVarArr) {
this.a = qVarArr;
}
}
public ABTest() {
q i;
c[] cVarArr = {new c(new int[]{-1}, com.mxtech.videoplayer.ad.online.abtest.b.values()), new c(new int[]{9}, ung.values()), new c(new int[]{-1}, ca9.values()), new c(new int[]{-1}, zna.values()), new c(new int[]{-1}, ty7.values()), new c(new int[]{-1}, pia.values())};
this.n = cVarArr;
b3d b3dVar = tya.o;
boolean contains = b3dVar.b.contains("abTestSeed");
SharedPreferences sharedPreferences = b3dVar.b;
if (contains) {
sharedPreferences.getInt("abTestSeed", -1);
} else {
sharedPreferences.edit().putInt("abTestSeed", Math.abs(new SecureRandom().nextInt() % 10000) + 1).apply();
}
for (int i2 = 0; i2 < 6; i2++) {
c cVar = cVarArr[i2];
q[] qVarArr = cVar.a;
if (qVarArr.length != 0) {
String h = qVarArr[0].h();
HashMap<String, q[]> hashMap = p;
q[] qVarArr2 = cVar.a;
hashMap.put(h, qVarArr2);
HashMap<String, q> hashMap2 = q;
if (qVarArr2.length == 0) {
throw new IllegalArgumentException("abtest should not null.");
}
hashMap2.put(h, qVarArr2[0].e());
}
}
SharedPreferences sharedPreferences2 = tya.m.getSharedPreferences("abtest", 0);
this.j = sharedPreferences2;
Map<String, ?> all = sharedPreferences2.getAll();
for (String str : all.keySet()) {
Object obj = all.get(str);
if ((obj instanceof String) && (i = i(str, (String) obj)) != null) {
this.c.put(str, i);
this.d.put(str, Integer.valueOf(this.j.getInt(str.concat("-bucketId"), -2)));
}
}
if (sharedPreferences.getBoolean("ab_test_d", false)) {
this.k = tya.m.getSharedPreferences("mx-d-abtest-mx", 0).getAll();
}
tya tyaVar = tya.m;
com.mxtech.videoplayer.ad.online.abtest.a aVar = new com.mxtech.videoplayer.ad.online.abtest.a(this);
if (tyaVar.d || !bd0.j()) {
aVar.run();
} else {
tyaVar.h.add(aVar);
}
}
public static void b(LinkedHashMap linkedHashMap, String str, String str2) {
linkedHashMap.put("abtest" + (linkedHashMap.size() + 1), lg.c(str, "_", str2).toString());
}
public static void e() throws IOException {
ABTest g = g();
synchronized (g.m) {
if (g.l == null) {
try {
g.d();
} catch (Exception unused) {
}
}
}
}
public static ABTest g() {
if (o == null) {
synchronized (ABTest.class) {
try {
if (o == null) {
o = new ABTest();
}
} finally {
}
}
}
return o;
}
public static q i(String str, String str2) {
q[] qVarArr = p.get(str.toLowerCase(Locale.ENGLISH));
if (qVarArr != null && qVarArr.length > 0) {
for (q qVar : qVarArr) {
if (TextUtils.equals(qVar.g(), str2)) {
return qVar;
}
}
}
int i = d1j.a;
return null;
}
@Override
public final Map<String, Object> a(lj5 lj5Var) {
HashMap hashMap = new HashMap();
h();
if (!TextUtils.isEmpty(this.f)) {
hashMap.put("abtest", this.f);
}
return hashMap;
}
public final int c(String str, boolean z) {
if (!z) {
Integer num = this.d.get(str);
if (num != null) {
return num.intValue();
}
return -2;
}
if (this.l == null) {
return -2;
}
Iterator<b> it = this.l.a.iterator();
while (it.hasNext()) {
b next = it.next();
if (next.b.equals(str)) {
return next.d;
}
}
return -2;
}
public final void d() throws JSONException, IOException, UrlInvalidException {
String lowerCase;
q i;
JSONStringer jSONStringer = new JSONStringer();
jSONStringer.object().key("testIds").array();
Iterator<String> it = p.keySet().iterator();
while (it.hasNext()) {
jSONStringer.value(it.next());
}
jSONStringer.endArray().endObject();
String jSONStringer2 = jSONStringer.toString();
String str = c0.a;
int i2 = d1j.a;
try {
byte[] m = c0.m(a5i.e(), c0.h("https://androidapi.mxplay.com/v1/abtest-trace/query"), ef0.c("https://androidapi.mxplay.com/v1/abtest-trace/query", c0.b, jSONStringer2, c0.c, Const.d()), false);
String str2 = m.length > 0 ? new String(m) : "";
a aVar = new a();
aVar.a = new LinkedList<>();
JSONArray optJSONArray = new JSONObject(str2).optJSONArray("list");
if (optJSONArray != null) {
for (int i3 = 0; i3 < optJSONArray.length(); i3++) {
try {
aVar.a.add(new b(optJSONArray.getJSONObject(i3)));
} catch (JSONException unused) {
}
}
}
this.l = aVar;
synchronized (r) {
this.i = "";
}
HashMap hashMap = new HashMap();
Iterator<b> it2 = aVar.a.iterator();
while (it2.hasNext()) {
b next = it2.next();
if (!next.c && (i = i((lowerCase = next.b.toLowerCase(Locale.ENGLISH)), next.a)) != null) {
hashMap.put(lowerCase, i);
}
}
SharedPreferences.Editor edit = this.j.edit();
edit.clear();
for (Map.Entry entry : hashMap.entrySet()) {
edit.putString((String) entry.getKey(), ((q) entry.getValue()).g());
edit.putInt(rg2.d((String) entry.getKey(), "-bucketId"), c((String) entry.getKey(), true));
}
edit.apply();
} catch (Exception e) {
if (e instanceof StatusCodeException) {
tj5.c(e);
} else if (e instanceof IllegalRequestException) {
gfh.c(e);
}
throw e;
}
}
public final q f(String str) {
q qVar;
q qVar2;
Object obj;
Map<String, ?> map = this.k;
if (map != null && (obj = map.get(str)) != null) {
loop0: for (c cVar : this.n) {
if (cVar.a[0].h().equals(str)) {
q[] qVarArr = cVar.a;
int length = qVarArr.length;
for (int i = 0; i < length; i++) {
qVar = qVarArr[i];
if (qVar.g().equals(obj)) {
break loop0;
}
}
}
}
}
qVar = null;
if (qVar != null) {
return qVar;
}
synchronized (this.c) {
try {
qVar2 = this.c.get(str);
if (qVar2 == null && (qVar2 = q.get(str)) != null) {
this.c.put(str, qVar2);
}
if (qVar2 != null) {
int i2 = d1j.a;
}
} catch (Throwable th) {
throw th;
}
}
return qVar2;
}
public final void h() {
int i;
HashMap<String, q[]> hashMap = p;
synchronized (hashMap) {
try {
if (this.h) {
return;
}
LinkedHashMap linkedHashMap = new LinkedHashMap(1);
ArrayList arrayList = new ArrayList(1);
Iterator<String> it = hashMap.keySet().iterator();
while (true) {
if (!it.hasNext()) {
break;
}
String next = it.next();
q f = f(next);
if (f != f.e()) {
arrayList.add(new TrackTest(next, f == f.e() ? "default" : f.g(), c(next, false)));
b(linkedHashMap, next, f == f.e() ? "default" : f.g());
}
}
if (this.l != null) {
Iterator<b> it2 = this.l.a.iterator();
while (it2.hasNext()) {
b next2 = it2.next();
if (next2.c) {
arrayList.add(new TrackTest(next2.b, next2.a, next2.d));
b(linkedHashMap, next2.b, next2.a);
}
}
this.h = true;
}
if (!arrayList.isEmpty()) {
StringBuilder sb = new StringBuilder();
sb.append("[");
int size = arrayList.size();
for (i = 0; i < size; i++) {
((TrackTest) arrayList.get(i)).toString(sb);
if (i < size - 1) {
sb.append(',');
}
}
sb.append("]");
this.f = sb.toString();
}
if (!linkedHashMap.isEmpty()) {
this.g = linkedHashMap;
}
} catch (Throwable th) {
throw th;
}
}
}
@NotProguard
public static class TrackTest {
public final int bucketId;
public final String groupname;
public final String testname;
public TrackTest(String str, String str2, int i) {
this.testname = str;
this.groupname = str2;
this.bucketId = i;
}
public void toString(StringBuilder sb) {
sb.append('{');
if (!TextUtils.isEmpty(this.testname)) {
sb.append("\"testname\":\"");
sb.append(this.testname);
sb.append("\",");
}
if (!TextUtils.isEmpty(this.groupname)) {
sb.append("\"groupname\":\"");
sb.append(this.groupname);
sb.append("\",");
}
sb.append("\"bucketid\":");
sb.append(this.bucketId);
sb.append('}');
}
@NonNull
public String toString() {
StringBuilder sb = new StringBuilder();
toString(sb);
return sb.toString();
}
}
}