Initial commit

This commit is contained in:
2025-05-13 19:24:51 +02:00
commit a950f49678
10604 changed files with 932663 additions and 0 deletions

View File

@@ -0,0 +1,359 @@
package com.baidu.uaq.agent.android;
import androidx.annotation.Keep;
@Keep
/* loaded from: classes.dex */
public class AgentConfig {
private static final String DEFAULT_COLLECTOR_HOST = "dq.jomodns.com";
private static final int DEFAULT_COLLECTOR_PORT = 443;
private static final long DEFAULT_DATA_REPORT_LIMIT = 204800;
private static final long DEFAULT_DATA_REPORT_PERIOD = 60000;
private static final int DEFAULT_HARVESTABLE_CACHE_LIMIT = 1024;
private static final int DEFAULT_LOG_LEVEL = 5;
private static final int DEFAULT_RESPONSE_BODY_LIMIT = 2048;
private static final long DEFAULT_SAMPLER_FREQ = 100;
private static final double DEFAULT_SAMPLE_RATE = 100.0d;
private static final int DEFAULT_STACK_TRACE_LIMIT = 100;
private String APIKey;
private String channel;
private boolean collectAgentHealth;
private String collectorHost;
private int collectorPort;
private String cuid;
private long dataReportLimit;
private long dataReportPeriod;
private boolean enableMobileNetworkReport;
private boolean enableStatsEngine;
private boolean enableTrace;
private boolean enableTransmission;
private int harvestableCacheLimit;
private boolean logEnabled;
private int logLevel;
private boolean nativeControlDRP;
private boolean reportCrashes;
private long responseBodyLimit;
private double sampleRate;
private long samplerFreq;
private boolean thingsMonitor;
private boolean useLogPersist;
private boolean usePersistentUUID;
private boolean useSsl;
public String getAPIKey() {
return this.APIKey;
}
public String getChannel() {
return this.channel;
}
public String getCollectorHost() {
return this.collectorHost;
}
public int getCollectorPort() {
return this.collectorPort;
}
public String getCuid() {
return this.cuid;
}
public long getDataReportLimit() {
return this.dataReportLimit;
}
public long getDataReportPeriod() {
return this.dataReportPeriod;
}
public int getHarvestableCacheLimit() {
return this.harvestableCacheLimit;
}
public int getLogLevel() {
return this.logLevel;
}
public long getResponseBodyLimit() {
return this.responseBodyLimit;
}
public double getSampleRate() {
return this.sampleRate;
}
public long getSamplerFreq() {
return this.samplerFreq;
}
public boolean isCollectAgentHealth() {
return this.collectAgentHealth;
}
public boolean isEnableMobileNetworkReport() {
return this.enableMobileNetworkReport;
}
public boolean isEnableStatsEngine() {
return this.enableStatsEngine;
}
public boolean isEnableTrace() {
return this.enableTrace;
}
public boolean isEnableTransmission() {
return this.enableTransmission;
}
public boolean isLogEnabled() {
return this.logEnabled;
}
public boolean isNativeControlDRP() {
return this.nativeControlDRP;
}
public boolean isReportCrashes() {
return this.reportCrashes;
}
public boolean isThingsMonitor() {
return this.thingsMonitor;
}
public boolean isUseLogPersist() {
return this.useLogPersist;
}
public boolean isUsePersistentUUID() {
return this.usePersistentUUID;
}
public boolean isUseSsl() {
return this.useSsl;
}
public Builder newBuilder() {
return new Builder(this);
}
public String toString() {
return "AgentConfig{\nAPIKey='" + this.APIKey + "'\n, logEnabled=" + this.logEnabled + "\n, logLevel=" + this.logLevel + "\n, useSsl=" + this.useSsl + "\n, collectorHost='" + this.collectorHost + "'\n, dataReportPeriod=" + this.dataReportPeriod + "\n, nativeControlDRP=" + this.nativeControlDRP + "\n, dataReportLimit=" + this.dataReportLimit + "\n, enableMobileNetworkReport=" + this.enableMobileNetworkReport + "\n, useLogPersist=" + this.useLogPersist + "\n, reportCrashes=" + this.reportCrashes + "\n, usePersistentUUID=" + this.usePersistentUUID + "\n, responseBodyLimit=" + this.responseBodyLimit + "\n, sampleRate=" + this.sampleRate + "\n, cuid='" + this.cuid + "'\n, channel='" + this.channel + "'\n, harvestableCacheLimit=" + this.harvestableCacheLimit + "\n, samplerFreq=" + this.samplerFreq + "\n, enableTransmission=" + this.enableTransmission + "\n, enableTrace=" + this.enableTrace + "\n, thingsMonitor=" + this.thingsMonitor + "\n, enableStatsEngine=" + this.enableStatsEngine + "\n}";
}
private AgentConfig(Builder builder) {
this.APIKey = builder.APIKey;
this.logEnabled = builder.logEnabled;
this.logLevel = builder.logLevel;
this.useSsl = builder.useSsl;
this.collectorHost = builder.collectorHost;
this.collectorPort = builder.collectorPort;
this.dataReportPeriod = builder.dataReportPeriod;
this.nativeControlDRP = builder.nativeControlDRP;
this.dataReportLimit = builder.dataReportLimit;
this.enableMobileNetworkReport = builder.enableMobileNetworkReport;
this.useLogPersist = builder.useLogPersist;
this.reportCrashes = builder.reportCrashes;
this.usePersistentUUID = builder.usePersistentUUID;
this.responseBodyLimit = builder.responseBodyLimit;
this.sampleRate = builder.sampleRate;
this.cuid = builder.cuid;
this.channel = builder.channel;
this.harvestableCacheLimit = builder.harvestableCacheLimit;
this.samplerFreq = builder.samplerFreq;
this.enableTransmission = builder.enableTransmission;
this.enableTrace = builder.enableTrace;
this.thingsMonitor = builder.thingsMonitor;
this.collectAgentHealth = builder.collectAgentHealth;
this.enableStatsEngine = builder.enableStatsEngine;
}
@Keep
public static final class Builder {
private String APIKey;
private String channel;
private boolean collectAgentHealth;
private String collectorHost;
private int collectorPort;
private String cuid;
private long dataReportLimit;
private long dataReportPeriod;
private boolean enableMobileNetworkReport;
private boolean enableStatsEngine;
private boolean enableTrace;
private boolean enableTransmission;
private int harvestableCacheLimit;
private boolean logEnabled;
private int logLevel;
private boolean nativeControlDRP;
private boolean reportCrashes;
private long responseBodyLimit;
private double sampleRate;
private long samplerFreq;
private boolean thingsMonitor;
private boolean useLogPersist;
private boolean usePersistentUUID;
private boolean useSsl;
public Builder() {
this.APIKey = "";
this.logEnabled = false;
this.logLevel = 5;
this.useSsl = true;
this.collectorHost = AgentConfig.DEFAULT_COLLECTOR_HOST;
this.collectorPort = AgentConfig.DEFAULT_COLLECTOR_PORT;
this.dataReportPeriod = AgentConfig.DEFAULT_DATA_REPORT_PERIOD;
this.nativeControlDRP = false;
this.dataReportLimit = AgentConfig.DEFAULT_DATA_REPORT_LIMIT;
this.enableMobileNetworkReport = true;
this.useLogPersist = true;
this.reportCrashes = true;
this.usePersistentUUID = false;
this.responseBodyLimit = 2048L;
this.sampleRate = AgentConfig.DEFAULT_SAMPLE_RATE;
this.cuid = "null";
this.channel = "null";
this.harvestableCacheLimit = 1024;
this.samplerFreq = AgentConfig.DEFAULT_SAMPLER_FREQ;
this.enableTransmission = true;
this.enableTrace = true;
this.thingsMonitor = false;
this.collectAgentHealth = true;
this.enableStatsEngine = true;
}
public Builder APIKey(String str) {
this.APIKey = str;
return this;
}
public AgentConfig build() {
return new AgentConfig(this);
}
public Builder channel(String str) {
this.channel = str;
return this;
}
public Builder collectAgentHealth(boolean z) {
this.collectAgentHealth = z;
return this;
}
public Builder collectorHost(String str) {
this.collectorHost = str;
return this;
}
public Builder collectorPort(int i) {
this.collectorPort = i;
return this;
}
public Builder cuid(String str) {
this.cuid = str;
return this;
}
public Builder dataReportLimit(long j) {
this.dataReportLimit = j;
return this;
}
public Builder dataReportPeriod(long j) {
this.dataReportPeriod = j;
this.nativeControlDRP = true;
return this;
}
public Builder enableMobileNetworkReport(boolean z) {
this.enableMobileNetworkReport = z;
return this;
}
public Builder harvestableCacheLimit(int i) {
this.harvestableCacheLimit = i;
return this;
}
public Builder logEnabled(boolean z) {
this.logEnabled = z;
return this;
}
public Builder logLevel(int i) {
this.logLevel = i;
return this;
}
public Builder reportCrashes(boolean z) {
this.reportCrashes = z;
return this;
}
public Builder responseBodyLimit(long j) {
this.responseBodyLimit = j;
return this;
}
public Builder sampleRate(double d) {
this.sampleRate = d;
return this;
}
public Builder samplerFreq(long j) {
this.samplerFreq = j;
return this;
}
public Builder thingsMonitor(boolean z) {
this.thingsMonitor = z;
return this;
}
public Builder useLogPersist(boolean z) {
this.useLogPersist = z;
return this;
}
public Builder usePersistentUUID(boolean z) {
this.usePersistentUUID = z;
return this;
}
public Builder useSsl(boolean z) {
this.useSsl = z;
return this;
}
public Builder(AgentConfig agentConfig) {
this.APIKey = agentConfig.APIKey;
this.logEnabled = agentConfig.logEnabled;
this.logLevel = agentConfig.logLevel;
this.useSsl = agentConfig.useSsl;
this.collectorHost = agentConfig.collectorHost;
this.collectorPort = agentConfig.collectorPort;
this.dataReportPeriod = agentConfig.dataReportPeriod;
this.nativeControlDRP = agentConfig.nativeControlDRP;
this.dataReportLimit = agentConfig.dataReportLimit;
this.enableMobileNetworkReport = agentConfig.enableMobileNetworkReport;
this.useLogPersist = agentConfig.useLogPersist;
this.reportCrashes = agentConfig.reportCrashes;
this.usePersistentUUID = agentConfig.usePersistentUUID;
this.responseBodyLimit = agentConfig.responseBodyLimit;
this.sampleRate = agentConfig.sampleRate;
this.cuid = agentConfig.cuid;
this.channel = agentConfig.channel;
this.harvestableCacheLimit = agentConfig.harvestableCacheLimit;
this.samplerFreq = agentConfig.samplerFreq;
this.enableTransmission = agentConfig.enableTransmission;
this.enableTrace = agentConfig.enableTrace;
this.thingsMonitor = agentConfig.thingsMonitor;
this.enableStatsEngine = agentConfig.enableStatsEngine;
}
}
}

View File

@@ -0,0 +1,212 @@
package com.baidu.uaq.agent.android;
import android.content.Context;
import android.util.Log;
import androidx.annotation.Keep;
import com.baidu.uaq.agent.android.AgentConfig;
import com.baidu.uaq.agent.android.customtransmission.APMAgent;
import com.baidu.uaq.agent.android.harvest.bean.h;
import com.baidu.uaq.agent.android.harvest.bean.i;
@Keep
/* loaded from: classes.dex */
public class UAQ {
private static final com.baidu.uaq.agent.android.logging.a LOG = com.baidu.uaq.agent.android.logging.b.a();
private static volatile UAQ instance;
private AgentConfig savedConfig;
private boolean started = false;
private boolean isDisableCollect = false;
private boolean needBasicInfo = true;
private AgentConfig agentConfig = new AgentConfig.Builder().build();
private UAQ() {
}
public static UAQ getInstance() {
if (instance == null) {
synchronized (UAQ.class) {
if (instance == null) {
instance = new UAQ();
}
}
}
return instance;
}
public static String getVersion() {
return a.g() + "." + a.b();
}
private boolean isInstrumented() {
return false;
}
public static void onLiveEvent(String str) {
LOG.d("Get Live Event: " + str);
if (str.isEmpty()) {
return;
}
i.b(new h(str));
}
@Deprecated
public static UAQ setCUID(String str) {
getInstance().setConfig(new AgentConfig.Builder().APIKey("0b32398f92284103a76f03680104c775").cuid(str).channel("APM_TEST_CHANNEL").logEnabled(true).build());
return getInstance();
}
public static void setxxDebug(boolean z) {
}
@Deprecated
public static void shutdown() {
getInstance().shutdown_v2();
}
@Deprecated
public static UAQ usingCollectorAddress(String str) {
return getInstance();
}
@Deprecated
public static UAQ usingSsl(boolean z) {
return getInstance();
}
@Deprecated
public static UAQ withApplicationToken(String str) {
return getInstance();
}
@Deprecated
public static UAQ withLogLevel(int i) {
return getInstance();
}
@Deprecated
public static UAQ withLogPersist(boolean z) {
return getInstance();
}
@Deprecated
public static UAQ withLoggingEnabled(boolean z) {
return getInstance();
}
@Deprecated
public void agentExceptionNow() {
com.baidu.uaq.agent.android.harvest.health.a.a(new RuntimeException("This is a demonstration agent exception of UAQ"));
}
public void disableCollect() {
this.agentConfig = this.agentConfig.newBuilder().build();
}
public void enableCollect(AgentConfig agentConfig) {
if (agentConfig == null) {
throw new NullPointerException("savedConfig == null.");
}
this.agentConfig = agentConfig;
}
public AgentConfig getConfig() {
return this.agentConfig;
}
public AgentConfig getSavedConfig() {
return this.savedConfig;
}
@Deprecated
public void harvestNow() {
}
public boolean isDisableCollect() {
return this.isDisableCollect;
}
public boolean isNeedBasicInfo() {
return this.needBasicInfo;
}
public boolean isStarted() {
return this.started;
}
public synchronized void reconfig(AgentConfig agentConfig) {
if (agentConfig == null) {
throw new NullPointerException("agentConfig == null.");
}
this.agentConfig = agentConfig;
}
public UAQ setConfig(AgentConfig agentConfig) {
if (agentConfig == null) {
throw new NullPointerException("agentConfig == null.");
}
this.agentConfig = agentConfig;
return instance;
}
public void setDisableCollect(boolean z) {
this.isDisableCollect = z;
}
public void setNeedBasicInfo(boolean z) {
this.needBasicInfo = z;
}
public void setSavedConfig(AgentConfig agentConfig) {
this.savedConfig = agentConfig;
}
@Deprecated
public synchronized void shutdown_v2() {
com.baidu.uaq.agent.android.logging.a aVar;
String str;
try {
LOG.d("Agent try to shutdown");
} catch (Throwable th) {
try {
LOG.a("Caught error while stop the UAQ agent!", th);
a.a(e.a);
aVar = LOG;
str = "Agent finish shutdown";
} finally {
a.a(e.a);
LOG.d("Agent finish shutdown");
}
}
if (isStarted()) {
disableCollect();
this.started = false;
a.a().shutdown();
a.a(e.a);
aVar = LOG;
str = "Agent finish shutdown";
aVar.d(str);
}
}
public synchronized APMAgent startAPM(Context context) {
APMAgent aPMAgent;
aPMAgent = new APMAgent();
aPMAgent.setAgent(aPMAgent);
try {
long currentTimeMillis = System.currentTimeMillis();
if (!(a.a() instanceof d)) {
com.baidu.uaq.agent.android.logging.b.a(this.agentConfig.isLogEnabled() ? new com.baidu.uaq.agent.android.logging.c() : new com.baidu.uaq.agent.android.logging.e());
LOG.a(this.agentConfig.getLogLevel());
d.a(context);
}
g.a();
com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a(context);
long currentTimeMillis2 = System.currentTimeMillis();
LOG.d("Start UAQ " + a.g() + "." + a.b() + ", using time: " + (currentTimeMillis2 - currentTimeMillis) + "ms");
Log.d("Baidu UAQ APM", "Start UAQ APM instance success!");
} catch (Throwable th) {
LOG.a("Caught error while start the UAQ agent!", th);
}
return aPMAgent;
}
}

View File

@@ -0,0 +1,59 @@
package com.baidu.uaq.agent.android;
/* compiled from: Agent.java */
/* loaded from: classes.dex */
public class a {
private static final b a = new e();
private static final Object b = new Object();
private static b c = a;
public static void a(b bVar) {
synchronized (b) {
if (bVar == null) {
c = a;
} else {
c = bVar;
}
}
}
public static String b() {
return "1";
}
public static String c() {
return a().c();
}
public static String d() {
return a().d();
}
public static com.baidu.uaq.agent.android.harvest.bean.c e() {
return a().a();
}
public static com.baidu.uaq.agent.android.harvest.bean.a f() {
return a().b();
}
public static String g() {
return "5.0.0";
}
public static void h() {
a().shutdown();
}
public static void i() {
a().start();
}
public static b a() {
b bVar;
synchronized (b) {
bVar = c;
}
return bVar;
}
}

View File

@@ -0,0 +1,19 @@
package com.baidu.uaq.agent.android;
/* compiled from: AgentImpl.java */
/* loaded from: classes.dex */
public interface b {
com.baidu.uaq.agent.android.harvest.bean.c a();
com.baidu.uaq.agent.android.harvest.bean.a b();
String c();
String d();
com.baidu.uaq.agent.android.harvest.bean.d e();
void shutdown();
void start();
}

View File

@@ -0,0 +1,9 @@
package com.baidu.uaq.agent.android;
/* compiled from: AgentInitializationException.java */
/* loaded from: classes.dex */
public class c extends Exception {
public c(String str) {
super(str);
}
}

View File

@@ -0,0 +1,53 @@
package com.baidu.uaq.agent.android.crashes;
import com.tencent.open.SocialConstants;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: ApplicationInfo.java */
/* loaded from: classes.dex */
public class a extends com.baidu.uaq.agent.android.harvest.type.d {
private String b;
private String c;
private String d;
public a() {
this.b = "";
this.c = "";
this.d = "";
}
public static a a(JSONObject jSONObject) {
a aVar = new a();
try {
aVar.b = jSONObject.getString(SocialConstants.PARAM_APPNAME);
aVar.c = jSONObject.getString("appVersion");
aVar.d = jSONObject.getString("bundleId");
} catch (JSONException e) {
e.printStackTrace();
}
return aVar;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put(SocialConstants.PARAM_APPNAME, this.b);
jSONObject.put("appVersion", this.c);
jSONObject.put("bundleId", this.d);
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
public a(com.baidu.uaq.agent.android.harvest.bean.a aVar) {
this.b = "";
this.c = "";
this.d = "";
this.b = aVar.g();
this.c = aVar.e();
this.d = aVar.f();
}
}

View File

@@ -0,0 +1,122 @@
package com.baidu.uaq.agent.android.crashes;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.util.l;
import com.ubt.jimu.diy.view.fragment.BuildStepFragment;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: Crash.java */
/* loaded from: classes.dex */
public class b extends com.baidu.uaq.agent.android.harvest.type.d {
private static final UAQ l = UAQ.getInstance();
private int b;
private final UUID c;
private final String d;
private final long e;
private final String f;
private final String g;
private e h;
private a i;
private f j;
private List<h> k;
public b(UUID uuid, String str, long j) {
this.b = 1;
this.c = uuid;
this.d = str;
this.e = j;
this.f = l.getConfig().getAPIKey();
this.g = l.getConfig().getCuid();
}
private static Throwable a(Throwable th) {
Throwable cause = th.getCause();
return cause == null ? th : a(cause);
}
public static b b(String str) {
b bVar;
JSONObject jSONObject;
try {
jSONObject = new JSONObject(str);
bVar = new b(UUID.fromString(jSONObject.getString(BuildStepFragment.UUID)), jSONObject.getString("buildId"), jSONObject.getLong("timestamp"));
} catch (JSONException e) {
e = e;
bVar = null;
}
try {
bVar.h = e.a(jSONObject.getJSONObject("deviceInfo"));
bVar.i = a.a(jSONObject.getJSONObject("appInfo"));
bVar.j = f.a(jSONObject.getJSONObject("exception"));
bVar.k = h.b(jSONObject.getJSONArray("threads"));
} catch (JSONException e2) {
e = e2;
e.printStackTrace();
return bVar;
}
return bVar;
}
public static String f() {
return "";
}
private JSONArray g() {
JSONArray jSONArray = new JSONArray();
Iterator<h> it = this.k.iterator();
while (it.hasNext()) {
jSONArray.put(it.next().d());
}
return jSONArray;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("protocolVersion", this.b);
jSONObject.put("platform", "Android");
jSONObject.put(BuildStepFragment.UUID, this.c.toString());
jSONObject.put("buildId", this.d);
jSONObject.put("timestamp", Long.valueOf(this.e));
jSONObject.put("appToken", this.f);
jSONObject.put("cuid", com.baidu.uaq.agent.android.util.e.a(this.g));
jSONObject.put("deviceInfo", this.h.d());
jSONObject.put("appInfo", this.i.d());
jSONObject.put("exception", this.j.d());
jSONObject.put("threads", g());
jSONObject.put("activityHistory", new JSONArray());
com.baidu.uaq.agent.android.harvest.bean.b j = com.baidu.uaq.agent.android.harvest.multiharvest.d.c().j();
if (j != null) {
jSONObject.put("dataToken", j.a());
}
} catch (Exception e) {
e.printStackTrace();
}
return jSONObject;
}
public UUID e() {
return this.c;
}
public b(Throwable th) {
this.b = 1;
com.baidu.uaq.agent.android.b a = com.baidu.uaq.agent.android.a.a();
Throwable a2 = a(th);
this.c = new UUID(l.a().nextLong(), l.a().nextLong());
this.d = f();
this.e = System.currentTimeMillis() / 1000;
this.f = l.getConfig().getAPIKey();
this.g = l.getConfig().getCuid();
this.h = new e(a.a(), a.e());
this.i = new a(a.b());
this.j = new f(a2);
this.k = h.a(a2);
}
}

View File

@@ -0,0 +1,260 @@
package com.baidu.uaq.agent.android.crashes;
import com.baidu.uaq.agent.android.UAQ;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.lang.Thread;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Iterator;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicBoolean;
/* compiled from: CrashReporter.java */
/* loaded from: classes.dex */
public class c {
private static d f;
private static ExecutorService h;
private Thread.UncaughtExceptionHandler a;
private boolean b;
private static final com.baidu.uaq.agent.android.logging.a c = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ d = UAQ.getInstance();
private static final c e = new c();
private static final AtomicBoolean g = new AtomicBoolean(false);
/* compiled from: CrashReporter.java */
private static class a implements Runnable {
private final com.baidu.uaq.agent.android.crashes.b a;
a(com.baidu.uaq.agent.android.crashes.b bVar) {
this.a = bVar;
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARN: Type inference failed for: r2v22 */
/* JADX WARN: Type inference failed for: r2v23 */
/* JADX WARN: Type inference failed for: r2v24, types: [java.io.InputStream] */
/* JADX WARN: Type inference failed for: r2v26, types: [java.io.InputStream] */
/* JADX WARN: Type inference failed for: r2v27 */
/* JADX WARN: Type inference failed for: r2v4, types: [java.lang.StringBuilder] */
/* JADX WARN: Type inference failed for: r2v5, types: [java.io.InputStream] */
/* JADX WARN: Type inference failed for: r2v6 */
/* JADX WARN: Type inference failed for: r2v7 */
/* JADX WARN: Type inference failed for: r2v8, types: [java.io.InputStream] */
@Override // java.lang.Runnable
public void run() {
HttpURLConnection httpURLConnection;
String str = c.d.getConfig().isUseSsl() ? "https://" : "http://";
String str2 = ":" + c.d.getConfig().getCollectorPort();
?? sb = new StringBuilder();
sb.append(str);
sb.append(c.d.getConfig().getCollectorHost());
sb.append(str2);
sb.append("/sdk_push_crash");
String sb2 = sb.toString();
InputStreamReader inputStreamReader = null;
try {
try {
try {
c.c.d("Crash url = " + sb2);
httpURLConnection = (HttpURLConnection) new URL(sb2).openConnection();
} catch (Exception e) {
e = e;
sb = 0;
} catch (Throwable th) {
th = th;
sb = 0;
}
if (httpURLConnection == null) {
c.c.d("connection is null when send crash data!");
return;
}
httpURLConnection.setConnectTimeout(5000);
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoInput(true);
httpURLConnection.setDoOutput(true);
httpURLConnection.setRequestProperty("Content-Type", "application/json");
httpURLConnection.setRequestProperty("X-App-License-Key", c.d.getConfig().getAPIKey());
httpURLConnection.setRequestProperty("Content-Encoding", "gzip");
byte[] a = com.baidu.uaq.agent.android.util.b.a(this.a.c() + "\n", "utf-8");
httpURLConnection.setFixedLengthStreamingMode(a.length);
httpURLConnection.setRequestProperty("Content-Length", String.valueOf(a.length));
OutputStream outputStream = httpURLConnection.getOutputStream();
outputStream.write(a);
outputStream.flush();
outputStream.close();
if (httpURLConnection.getResponseCode() == 200) {
c.c.d("Crash " + this.a.e().toString() + " successfully submitted.");
sb = httpURLConnection.getInputStream();
try {
InputStreamReader inputStreamReader2 = new InputStreamReader(sb);
try {
BufferedReader bufferedReader = new BufferedReader(inputStreamReader2);
StringBuilder sb3 = new StringBuilder();
while (true) {
String readLine = bufferedReader.readLine();
if (readLine == null) {
break;
} else {
sb3.append(readLine);
}
}
c.c.d("send crash success, response: " + sb3.toString());
c.f.b(this.a);
inputStreamReader = inputStreamReader2;
sb = sb;
} catch (Exception e2) {
e = e2;
inputStreamReader = inputStreamReader2;
c.c.a("Unable to report crash to UAQ, will try again later.", e);
if (inputStreamReader != null) {
try {
inputStreamReader.close();
} catch (IOException e3) {
e3.printStackTrace();
}
}
if (sb != 0) {
sb.close();
}
return;
} catch (Throwable th2) {
th = th2;
inputStreamReader = inputStreamReader2;
if (inputStreamReader != null) {
try {
inputStreamReader.close();
} catch (IOException e4) {
e4.printStackTrace();
}
}
if (sb == 0) {
throw th;
}
try {
sb.close();
throw th;
} catch (IOException e5) {
e5.printStackTrace();
throw th;
}
}
} catch (Exception e6) {
e = e6;
}
} else {
c.c.a("Something went wrong while submitting a crash (will try again later) - Response code " + httpURLConnection.getResponseCode());
sb = 0;
}
httpURLConnection.disconnect();
if (inputStreamReader != null) {
try {
inputStreamReader.close();
} catch (IOException e7) {
e7.printStackTrace();
}
}
if (sb != 0) {
sb.close();
}
} catch (IOException e8) {
e8.printStackTrace();
}
} catch (Throwable th3) {
th = th3;
}
}
}
/* compiled from: CrashReporter.java */
private class b implements Thread.UncaughtExceptionHandler {
private final AtomicBoolean a;
private void a(Thread thread, Throwable th) {
if (c.this.a != null) {
c.c.d("Chaining crash reporting duties to " + c.this.a.getClass().getSimpleName());
c.this.a.uncaughtException(thread, th);
}
}
@Override // java.lang.Thread.UncaughtExceptionHandler
public void uncaughtException(Thread thread, Throwable th) {
if (!this.a.compareAndSet(false, true)) {
com.baidu.uaq.agent.android.stats.a.b().a("Supportability/AgentHealth/Recursion/UncaughtExceptionHandler");
return;
}
if (!c.d.getConfig().isReportCrashes() || !c.e.b) {
c.c.d("A crash has been detected but crash reporting is disabled!");
a(thread, th);
return;
}
try {
com.baidu.uaq.agent.android.stats.b bVar = new com.baidu.uaq.agent.android.stats.b();
bVar.a();
c.c.d("A crash has been detected in " + thread.getStackTrace()[0].getClassName() + " and will be reported ASAP.");
com.baidu.uaq.agent.android.crashes.b bVar2 = new com.baidu.uaq.agent.android.crashes.b(th);
c unused = c.e;
c.f.a(bVar2);
c.a(bVar2);
c.c.d("Crash collection took " + bVar.b() + "ms");
a(thread, th);
} catch (Throwable unused2) {
a(thread, th);
}
}
private b() {
this.a = new AtomicBoolean(false);
}
}
public c() {
h = Executors.newCachedThreadPool(new com.baidu.uaq.agent.android.util.g("CrashReporter"));
this.b = false;
}
public static void a(d dVar) {
e.b = true;
if (g.compareAndSet(false, true)) {
f = dVar;
h.submit(new Runnable() { // from class: com.baidu.uaq.agent.android.crashes.c.1
@Override // java.lang.Runnable
public void run() {
c.e.a();
}
});
e.b();
}
}
private void b() {
Thread.UncaughtExceptionHandler defaultUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
if (defaultUncaughtExceptionHandler == null) {
c.d("Installing UAQ crash handler.");
} else {
if (defaultUncaughtExceptionHandler instanceof b) {
c.d("UAQ crash handler already installed.");
return;
}
this.a = defaultUncaughtExceptionHandler;
c.d("Installing UAQ crash handler and chaining " + this.a.getClass().getName());
}
Thread.setDefaultUncaughtExceptionHandler(new b());
}
/* JADX INFO: Access modifiers changed from: private */
public void a() {
c.d("reportSavedCrashes, size=" + f.b());
Iterator<com.baidu.uaq.agent.android.crashes.b> it = f.a().iterator();
while (it.hasNext()) {
a(it.next());
}
}
public static void a(com.baidu.uaq.agent.android.crashes.b bVar) {
h.submit(new a(bVar));
}
}

View File

@@ -0,0 +1,15 @@
package com.baidu.uaq.agent.android.crashes;
import java.util.List;
/* compiled from: CrashStore.java */
/* loaded from: classes.dex */
public interface d {
List<b> a();
void a(b bVar);
int b();
void b(b bVar);
}

View File

@@ -0,0 +1,104 @@
package com.baidu.uaq.agent.android.crashes;
import com.unity3d.ads.adunit.AdUnitActivity;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: DeviceInfo.java */
/* loaded from: classes.dex */
public class e extends com.baidu.uaq.agent.android.harvest.type.d {
private long b;
private int c;
private String d;
private long[] e;
private String f;
private String g;
private String h;
private String i;
private String j;
private String k;
private String l;
private String m;
public e() {
}
public static e a(JSONObject jSONObject) {
e eVar = new e();
try {
eVar.b = jSONObject.getLong("memoryUsage");
eVar.c = jSONObject.getInt(AdUnitActivity.EXTRA_ORIENTATION);
eVar.d = jSONObject.getString("networkStatus");
eVar.e = a(jSONObject.getJSONArray("diskAvailable"));
eVar.f = jSONObject.getString("OSVersion");
eVar.g = jSONObject.getString("deviceName");
eVar.h = jSONObject.getString("OSBuild");
eVar.i = jSONObject.getString("architecture");
eVar.m = jSONObject.getString("runTime");
eVar.j = jSONObject.getString("modelNumber");
eVar.k = jSONObject.getString("screenResolution");
eVar.l = jSONObject.getString("deviceUuid");
} catch (JSONException e) {
e.printStackTrace();
}
return eVar;
}
private JSONArray e() {
JSONArray jSONArray = new JSONArray();
for (long j : this.e) {
jSONArray.put(Long.valueOf(j));
}
return jSONArray;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("memoryUsage", Long.valueOf(this.b));
jSONObject.put(AdUnitActivity.EXTRA_ORIENTATION, Integer.valueOf(this.c));
jSONObject.put("networkStatus", this.d);
jSONObject.put("diskAvailable", e());
jSONObject.put("OSVersion", this.f);
jSONObject.put("deviceName", this.g);
jSONObject.put("OSBuild", this.h);
jSONObject.put("architecture", this.i);
jSONObject.put("runTime", this.m);
jSONObject.put("modelNumber", this.j);
jSONObject.put("screenResolution", this.k);
jSONObject.put("deviceUuid", this.l);
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
public e(com.baidu.uaq.agent.android.harvest.bean.c cVar, com.baidu.uaq.agent.android.harvest.bean.d dVar) {
this.b = dVar.a();
this.c = dVar.d();
this.d = dVar.b();
this.e = dVar.c();
this.f = cVar.e();
this.g = cVar.m();
this.h = cVar.i();
this.i = cVar.f();
this.j = cVar.n();
this.k = cVar.h();
this.l = cVar.l();
this.m = cVar.g();
}
private static long[] a(JSONArray jSONArray) {
long[] jArr = new long[jSONArray.length()];
for (int i = 0; i < jSONArray.length(); i++) {
try {
jArr[i] = jSONArray.getLong(i);
} catch (JSONException e) {
e.printStackTrace();
}
}
return jArr;
}
}

View File

@@ -0,0 +1,47 @@
package com.baidu.uaq.agent.android.crashes;
import com.unity3d.ads.metadata.MediationMetaData;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: ExceptionInfo.java */
/* loaded from: classes.dex */
public class f extends com.baidu.uaq.agent.android.harvest.type.d {
private String b;
private String c;
public f() {
}
public static f a(JSONObject jSONObject) {
f fVar = new f();
try {
fVar.b = jSONObject.getString(MediationMetaData.KEY_NAME);
fVar.c = jSONObject.getString("cause");
} catch (JSONException e) {
e.printStackTrace();
}
return fVar;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put(MediationMetaData.KEY_NAME, this.b);
jSONObject.put("cause", this.c);
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
public f(Throwable th) {
this.b = th.getClass().getName();
if (th.getMessage() != null) {
this.c = th.getMessage();
} else {
this.c = "";
}
}
}

View File

@@ -0,0 +1,61 @@
package com.baidu.uaq.agent.android.crashes;
import android.content.Context;
import android.content.SharedPreferences;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/* compiled from: JsonCrashStore.java */
/* loaded from: classes.dex */
public class g implements d {
private static final com.baidu.uaq.agent.android.logging.a b = com.baidu.uaq.agent.android.logging.b.a();
private final Context a;
public g(Context context) {
this.a = context;
}
@Override // com.baidu.uaq.agent.android.crashes.d
public void a(b bVar) {
synchronized (this) {
SharedPreferences.Editor edit = this.a.getSharedPreferences("APMCrashStore", 0).edit();
edit.putString(bVar.e().toString(), bVar.c());
edit.commit();
}
}
@Override // com.baidu.uaq.agent.android.crashes.d
public int b() {
return this.a.getSharedPreferences("APMCrashStore", 0).getAll().size();
}
@Override // com.baidu.uaq.agent.android.crashes.d
public void b(b bVar) {
synchronized (this) {
SharedPreferences.Editor edit = this.a.getSharedPreferences("APMCrashStore", 0).edit();
edit.remove(bVar.e().toString());
edit.commit();
}
}
@Override // com.baidu.uaq.agent.android.crashes.d
public List<b> a() {
Map<String, ?> all;
SharedPreferences sharedPreferences = this.a.getSharedPreferences("APMCrashStore", 0);
ArrayList arrayList = new ArrayList();
synchronized (this) {
all = sharedPreferences.getAll();
}
for (Object obj : all.values()) {
if (obj instanceof String) {
try {
arrayList.add(b.b((String) obj));
} catch (Exception e) {
b.a("Exception encountered while deserializing crash", e);
}
}
}
return arrayList;
}
}

View File

@@ -0,0 +1,144 @@
package com.baidu.uaq.agent.android.crashes;
import com.ubt.jimu.diy.model.CategoryModel;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: ThreadInfo.java */
/* loaded from: classes.dex */
public class h extends com.baidu.uaq.agent.android.harvest.type.d {
private boolean b;
private long c;
private String d;
private int e;
private StackTraceElement[] f;
private String g;
private h() {
}
public static List<h> a(Throwable th) {
ArrayList arrayList = new ArrayList();
h hVar = new h(th);
long e = hVar.e();
arrayList.add(hVar);
for (Map.Entry<Thread, StackTraceElement[]> entry : Thread.getAllStackTraces().entrySet()) {
Thread key = entry.getKey();
StackTraceElement[] value = entry.getValue();
if (key.getId() != e) {
arrayList.add(new h(key, value));
}
}
return arrayList;
}
public static List<h> b(JSONArray jSONArray) {
ArrayList arrayList = new ArrayList();
for (int i = 0; i < jSONArray.length(); i++) {
try {
arrayList.add(a(jSONArray.getJSONObject(i)));
} catch (JSONException e) {
e.printStackTrace();
}
}
return arrayList;
}
private JSONArray f() {
JSONArray jSONArray = new JSONArray();
for (StackTraceElement stackTraceElement : this.f) {
try {
if (stackTraceElement != null) {
JSONObject jSONObject = new JSONObject();
if (stackTraceElement.getFileName() != null) {
jSONObject.put("fileName", stackTraceElement.getFileName());
}
jSONObject.put("className", stackTraceElement.getClassName());
jSONObject.put("methodName", stackTraceElement.getMethodName());
jSONObject.put("lineNumber", Integer.valueOf(stackTraceElement.getLineNumber()));
jSONArray.put(jSONObject);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
return jSONArray;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("crashed", Boolean.valueOf(this.b));
jSONObject.put("state", this.g);
jSONObject.put("threadNumber", Long.valueOf(this.c));
jSONObject.put("threadId", this.d);
jSONObject.put("priority", Integer.valueOf(this.e));
jSONObject.put("stack", f());
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
public long e() {
return this.c;
}
public h(Throwable th) {
this.b = true;
this.c = Thread.currentThread().getId();
this.d = Thread.currentThread().getName();
this.e = Thread.currentThread().getPriority();
this.f = th.getStackTrace();
this.g = Thread.currentThread().getState().toString();
}
public h(Thread thread, StackTraceElement[] stackTraceElementArr) {
this.b = false;
this.c = thread.getId();
this.d = thread.getName();
this.e = thread.getPriority();
this.f = stackTraceElementArr;
this.g = thread.getState().toString();
}
public static h a(JSONObject jSONObject) {
h hVar = new h();
try {
hVar.b = jSONObject.getBoolean("crashed");
hVar.g = jSONObject.getString("state");
hVar.c = jSONObject.getLong("threadNumber");
hVar.d = jSONObject.getString("threadId");
hVar.e = jSONObject.getInt("priority");
hVar.f = a(jSONObject.getJSONArray("stack"));
} catch (JSONException e) {
e.printStackTrace();
}
return hVar;
}
public static StackTraceElement[] a(JSONArray jSONArray) {
StackTraceElement[] stackTraceElementArr = new StackTraceElement[jSONArray.length()];
int i = 0;
while (i < jSONArray.length()) {
try {
String str = CategoryModel.unknown;
if (jSONArray.getJSONObject(i).optString("fileName") != null) {
str = jSONArray.getJSONObject(i).optString("fileName");
}
StackTraceElement stackTraceElement = new StackTraceElement(jSONArray.getJSONObject(i).getString("className"), jSONArray.getJSONObject(i).getString("methodName"), str, jSONArray.getJSONObject(i).getInt("lineNumber"));
int i2 = i + 1;
stackTraceElementArr[i] = stackTraceElement;
i = i2 + 1;
} catch (JSONException e) {
e.printStackTrace();
}
}
return stackTraceElementArr;
}
}

View File

@@ -0,0 +1,78 @@
package com.baidu.uaq.agent.android.customtransmission;
import androidx.annotation.Keep;
import com.baidu.uaq.agent.android.harvest.bean.h;
import com.baidu.uaq.agent.android.harvest.bean.i;
import java.net.MalformedURLException;
import java.net.URL;
@Keep
/* loaded from: classes.dex */
public class APMAgent {
private static final com.baidu.uaq.agent.android.logging.a LOG = com.baidu.uaq.agent.android.logging.b.a();
private APMAgent apmAgent;
public void addDebugLog(String str) {
}
public void addLogWithHandler(APMUploadHandler aPMUploadHandler, String str) {
if (aPMUploadHandler == null || str == null || str.isEmpty()) {
LOG.c("APMAgent addLogWithHandler failed, cause APMUploadHandler is null or log is empty!");
} else if (aPMUploadHandler.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
i.b(new h(str));
} else {
b.a(aPMUploadHandler.getUploadName(), str);
}
}
public APMUploadHandler addUploadConfigure(APMUploadConfigure aPMUploadConfigure) {
if (aPMUploadConfigure == null || aPMUploadConfigure.getUploadName() == null || aPMUploadConfigure.getUploadName().isEmpty()) {
LOG.a("添加上报策略失败APMUploadConfigure, uploadName 有空值");
return null;
}
if (!aPMUploadConfigure.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
String url = aPMUploadConfigure.getUrl();
if (aPMUploadConfigure.getMergeBlockCallBack() == null) {
LOG.a("添加上报策略失败mergeBlockCallBack为空");
return null;
}
try {
new URL(url);
} catch (MalformedURLException unused) {
LOG.a("添加上报策略失败url for newUploadConfigure is not legal! url: " + url);
return null;
}
}
APMUploadHandler apmUploadHandler = aPMUploadConfigure.getApmUploadHandler();
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() > 0) {
com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a(aPMUploadConfigure);
}
LOG.d("addUploadConfigure getInstanceNumber:" + com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a());
return apmUploadHandler;
}
public APMUploadConfigure newUploadConfigure(String str, String str2, MergeBlockCallBack mergeBlockCallBack) {
return new APMUploadConfigure(str, str2, mergeBlockCallBack);
}
@Deprecated
public void removeUploadConfigure(APMUploadHandler aPMUploadHandler) {
if (aPMUploadHandler == null) {
return;
}
b.a(aPMUploadHandler.getUploadName());
}
public void setAgent(APMAgent aPMAgent) {
this.apmAgent = aPMAgent;
}
public synchronized void stopAPM() {
if (this.apmAgent != null) {
com.baidu.uaq.agent.android.harvest.multiharvest.a.c().b();
this.apmAgent = null;
} else {
LOG.d("This instance already stop one time");
}
}
}

View File

@@ -0,0 +1,118 @@
package com.baidu.uaq.agent.android.customtransmission;
import androidx.annotation.Keep;
import com.baidu.uaq.agent.android.UAQ;
import java.util.HashMap;
@Keep
/* loaded from: classes.dex */
public class APMUploadConfigure {
private static final UAQ AGENT = UAQ.getInstance();
public static final String APMUPLOADNAME = "APMPerformanceConfigurationName";
private static final long MAXBYTESPERIOD = 86400000;
private static final long MAXBYTESWIFI = 0;
public static final int MAXUPLOADRETRYCOUNT = 3;
private static final int MSEC = 1000;
private APMUploadHandler apmUploadHandler;
private boolean enableRetransmission;
private HashMap<String, String> headerMap = new HashMap<>();
private long interval4g;
private long intervalWifi;
private long maxBytes4g;
private long maxBytesPeriod4g;
private long maxBytesPeriodWifi;
private long maxBytesWifi;
private MergeBlockCallBack mergeBlockCallBack;
private String uploadName;
private String url;
public APMUploadConfigure(String str, String str2, MergeBlockCallBack mergeBlockCallBack) {
this.headerMap.put("Content-Type", "application/json");
this.headerMap.put("Content-Encoding", "deflate");
this.uploadName = str;
this.url = str2;
this.mergeBlockCallBack = mergeBlockCallBack;
this.enableRetransmission = false;
this.interval4g = AGENT.getConfig().getDataReportPeriod();
this.intervalWifi = AGENT.getConfig().getDataReportPeriod();
this.maxBytes4g = AGENT.getConfig().getDataReportLimit();
this.maxBytesWifi = 0L;
this.maxBytesPeriod4g = MAXBYTESPERIOD;
this.maxBytesPeriodWifi = MAXBYTESPERIOD;
this.apmUploadHandler = new APMUploadHandler(this.uploadName);
}
public void enableRetransmission(boolean z) {
this.enableRetransmission = z;
}
public APMUploadHandler getApmUploadHandler() {
return this.apmUploadHandler;
}
public HashMap<String, String> getHeaderMap() {
return this.headerMap;
}
public long getInterval4g() {
return this.interval4g;
}
public long getIntervalWifi() {
return this.intervalWifi;
}
public long getMaxBytes4g() {
return this.maxBytes4g;
}
public long getMaxBytesPeriod4g() {
return this.maxBytesPeriod4g;
}
public long getMaxBytesPeriodWifi() {
return this.maxBytesPeriodWifi;
}
public long getMaxBytesWifi() {
return this.maxBytesWifi;
}
public MergeBlockCallBack getMergeBlockCallBack() {
return this.mergeBlockCallBack;
}
public String getUploadName() {
return this.uploadName;
}
public String getUrl() {
return this.url;
}
public boolean isEnableRetransmission() {
return this.enableRetransmission;
}
public void setHeaderMap(HashMap<String, String> hashMap) {
this.headerMap = hashMap;
}
public void setInterval4g(long j) {
this.interval4g = j * 1000;
}
public void setIntervalWifi(long j) {
this.intervalWifi = j * 1000;
}
public void setMaxbytes4g(long j, long j2) {
this.maxBytes4g = j;
this.maxBytesPeriod4g = j2 * 1000;
}
public void setMaxbyteswifi(long j, long j2) {
this.maxBytesWifi = j;
this.maxBytesPeriodWifi = j2 * 1000;
}
}

View File

@@ -0,0 +1,21 @@
package com.baidu.uaq.agent.android.customtransmission;
import androidx.annotation.Keep;
@Keep
/* loaded from: classes.dex */
public class APMUploadHandler {
private String uploadName;
public APMUploadHandler(String str) {
this.uploadName = str;
}
public String getUploadName() {
return this.uploadName;
}
public void setUploadName(String str) {
this.uploadName = str;
}
}

View File

@@ -0,0 +1,10 @@
package com.baidu.uaq.agent.android.customtransmission;
import androidx.annotation.Keep;
import java.util.ArrayList;
@Keep
/* loaded from: classes.dex */
public interface MergeBlockCallBack {
String executeMerge(ArrayList<String> arrayList);
}

View File

@@ -0,0 +1,31 @@
package com.baidu.uaq.agent.android.customtransmission;
/* compiled from: BlockData.java */
/* loaded from: classes.dex */
public class a {
private String a;
private int b;
public a(String str) {
this.a = "";
this.b = 0;
this.a = str;
this.b = 0;
}
public String a() {
return this.a;
}
public void b() {
this.b++;
}
public int c() {
return this.b;
}
public String toString() {
return "BlockData{block='" + this.a + "', retryCount=" + this.b + '}';
}
}

View File

@@ -0,0 +1,122 @@
package com.baidu.uaq.agent.android.customtransmission;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.concurrent.ConcurrentHashMap;
/* compiled from: UploadConfigureStorage.java */
/* loaded from: classes.dex */
public class b {
private static final com.baidu.uaq.agent.android.logging.a a = com.baidu.uaq.agent.android.logging.b.a();
private static final ConcurrentHashMap<String, APMUploadConfigure> b = new ConcurrentHashMap<>();
private static final ConcurrentHashMap<String, ArrayList<a>> c = new ConcurrentHashMap<>();
public static synchronized void a(APMUploadConfigure aPMUploadConfigure) {
synchronized (b.class) {
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() < 1) {
a.a("Agent has shutdown when add Upload Configure");
} else {
b.put(aPMUploadConfigure.getUploadName(), aPMUploadConfigure);
}
}
}
public static synchronized ConcurrentHashMap<String, ArrayList<a>> b() {
ConcurrentHashMap<String, ArrayList<a>> concurrentHashMap;
synchronized (b.class) {
concurrentHashMap = c;
}
return concurrentHashMap;
}
public static synchronized void b(String str, Boolean bool) {
synchronized (b.class) {
ArrayList<a> arrayList = c.get(str);
if (bool.booleanValue()) {
ArrayList arrayList2 = new ArrayList();
Iterator<a> it = arrayList.iterator();
while (it.hasNext()) {
a next = it.next();
if (next.c() == 0) {
arrayList2.add(next);
}
}
a(str, (ArrayList<a>) arrayList2);
}
}
}
@Deprecated
static synchronized void a(String str) {
synchronized (b.class) {
b.remove(str);
}
}
static synchronized void a(String str, String str2) {
synchronized (b.class) {
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() < 1) {
a.a("Agent has shutdown when add Upload Block");
} else {
synchronized (c) {
ArrayList<a> arrayList = c.get(str);
if (arrayList == null) {
arrayList = new ArrayList<>();
}
arrayList.add(new a(str2));
c.put(str, arrayList);
}
}
}
}
public static synchronized ArrayList<String> a(String str, Boolean bool) {
synchronized (b.class) {
ArrayList<String> arrayList = new ArrayList<>();
ArrayList arrayList2 = new ArrayList();
synchronized (c) {
ArrayList<a> arrayList3 = c.get(str);
if (arrayList3 != null && arrayList3.size() != 0) {
if (bool.booleanValue()) {
for (int i = 0; i < arrayList3.size(); i++) {
if (arrayList3.get(i).c() < 3) {
arrayList2.add(arrayList3.get(i));
arrayList3.get(i).b();
arrayList.add(arrayList3.get(i).a());
}
}
a(str, (ArrayList<a>) arrayList2);
} else {
Iterator<a> it = arrayList3.iterator();
while (it.hasNext()) {
arrayList.add(it.next().a());
}
c.remove(str);
}
return arrayList;
}
return null;
}
}
}
public static synchronized ConcurrentHashMap<String, APMUploadConfigure> a() {
ConcurrentHashMap<String, APMUploadConfigure> concurrentHashMap;
synchronized (b.class) {
concurrentHashMap = b;
}
return concurrentHashMap;
}
static synchronized void a(String str, ArrayList<a> arrayList) {
synchronized (b.class) {
synchronized (c) {
if (arrayList != null) {
c.put(str, arrayList);
} else {
c.remove(str);
}
}
}
}
}

View File

@@ -0,0 +1,179 @@
package com.baidu.uaq.agent.android;
import android.app.Application;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Environment;
import android.os.StatFs;
import android.text.TextUtils;
import com.baidu.uaq.agent.android.util.i;
/* compiled from: AndroidAgentImpl.java */
/* loaded from: classes.dex */
public class d implements b {
private static final com.baidu.uaq.agent.android.logging.a f = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ g = UAQ.getInstance();
private final Context a;
private f b;
private com.baidu.uaq.agent.android.harvest.bean.c c;
private com.baidu.uaq.agent.android.harvest.bean.a d;
private com.baidu.uaq.agent.android.crashes.d e;
public d(Context context) throws c {
if (TextUtils.isEmpty(g.getConfig().getAPIKey())) {
f.d("License key invalid cannot start.");
throw new c("This license key is null");
}
this.a = b(context);
this.b = new f(this.a);
if (!g.getConfig().getAPIKey().equals(this.b.e())) {
f.d("License key has changed. Clearing saved state.");
this.b.a();
this.b.b(g.getConfig().getDataReportLimit());
this.b.c(System.currentTimeMillis());
}
if (g.getConfig().isNativeControlDRP() && g.getConfig().getDataReportPeriod() != this.b.b()) {
this.b.a(g.getConfig().getDataReportPeriod());
this.b.c();
}
this.b.a(g.getConfig().getAPIKey());
this.e = new com.baidu.uaq.agent.android.crashes.g(this.a);
}
public static void a(Context context) {
try {
a.a(new d(context));
a.i();
} catch (c e) {
f.a("Failed to initialize the agent: ", e);
}
}
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.a b() {
String str;
String str2 = "";
com.baidu.uaq.agent.android.harvest.bean.a aVar = this.d;
if (aVar != null) {
return aVar;
}
String packageName = this.a.getPackageName();
PackageManager packageManager = this.a.getPackageManager();
try {
PackageInfo packageInfo = packageManager.getPackageInfo(packageName, 0);
str = (packageInfo == null || packageInfo.versionName == null || packageInfo.versionName.length() <= 0) ? "" : packageInfo.versionName;
try {
ApplicationInfo applicationInfo = packageManager.getApplicationInfo(packageName, 0);
str2 = applicationInfo != null ? packageManager.getApplicationLabel(applicationInfo).toString() : packageName;
} catch (PackageManager.NameNotFoundException e) {
e = e;
f.a("Caught error while getApplicationInformation: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
this.d = new com.baidu.uaq.agent.android.harvest.bean.a(str2, str, packageName);
return this.d;
} catch (SecurityException e2) {
e = e2;
f.a("Caught error while getApplicationInformation: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
this.d = new com.baidu.uaq.agent.android.harvest.bean.a(str2, str, packageName);
return this.d;
}
} catch (PackageManager.NameNotFoundException | SecurityException e3) {
e = e3;
str = "";
}
this.d = new com.baidu.uaq.agent.android.harvest.bean.a(str2, str, packageName);
return this.d;
}
@Override // com.baidu.uaq.agent.android.b
public String c() {
return i.b(this.a);
}
@Override // com.baidu.uaq.agent.android.b
public String d() {
return i.a(this.a);
}
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.d e() {
com.baidu.uaq.agent.android.harvest.bean.d dVar = new com.baidu.uaq.agent.android.harvest.bean.d();
long[] jArr = new long[2];
StatFs statFs = new StatFs(Environment.getRootDirectory().getAbsolutePath());
StatFs statFs2 = new StatFs(Environment.getExternalStorageDirectory().getAbsolutePath());
try {
jArr[0] = statFs.getAvailableBlocksLong() * statFs.getBlockSizeLong();
jArr[1] = statFs2.getAvailableBlocksLong() * statFs.getBlockSizeLong();
} catch (Exception e) {
f.a("Caught error while getEnvironmentInformation: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
if (jArr[0] < 0) {
jArr[0] = 0;
}
if (jArr[1] < 0) {
jArr[1] = 0;
}
dVar.a(jArr);
dVar.a(0L);
dVar.a(this.a.getResources().getConfiguration().orientation);
dVar.a(i.a(this.a));
dVar.b(c());
return dVar;
}
@Override // com.baidu.uaq.agent.android.b
public void shutdown() {
com.baidu.uaq.agent.android.sample.a.d();
if (g.getConfig().isThingsMonitor()) {
com.baidu.uaq.agent.android.sample.b.k();
}
g.b();
}
@Override // com.baidu.uaq.agent.android.b
public void start() {
com.baidu.uaq.agent.android.sample.a.a(this.a);
if (g.getConfig().isThingsMonitor()) {
com.baidu.uaq.agent.android.sample.b.a(this.a);
}
if (g.getConfig().isReportCrashes()) {
com.baidu.uaq.agent.android.crashes.c.a(this.e);
}
}
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.c a() {
com.baidu.uaq.agent.android.harvest.bean.c cVar = this.c;
if (cVar != null) {
return cVar;
}
com.baidu.uaq.agent.android.harvest.bean.c cVar2 = new com.baidu.uaq.agent.android.harvest.bean.c();
cVar2.b("Android");
cVar2.c(Build.VERSION.RELEASE);
cVar2.i(Build.VERSION.INCREMENTAL);
cVar2.e(Build.MODEL);
cVar2.f("AndroidAgent");
cVar2.g(a.g() + "." + a.b());
cVar2.d(Build.MANUFACTURER);
if (g.getConfig().isUsePersistentUUID()) {
cVar2.h(com.baidu.uaq.agent.android.util.d.d(this.a));
} else {
cVar2.h(com.baidu.uaq.agent.android.util.d.b(this.a));
}
cVar2.j(System.getProperty("os.arch"));
cVar2.k(System.getProperty("java.vm.version"));
cVar2.l(com.baidu.uaq.agent.android.util.d.a(this.a).name().toLowerCase());
cVar2.m(g.getConfig().getCuid());
this.c = cVar2;
return this.c;
}
private static Context b(Context context) {
return !(context instanceof Application) ? context.getApplicationContext() : context;
}
}

View File

@@ -0,0 +1,55 @@
package com.baidu.uaq.agent.android;
import com.ubt.jimu.diy.model.CategoryModel;
import com.ubt.jimu.transport.model.TransportFile;
/* compiled from: NullAgentImpl.java */
/* loaded from: classes.dex */
public class e implements b {
public static final e a = new e();
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.c a() {
com.baidu.uaq.agent.android.harvest.bean.c cVar = new com.baidu.uaq.agent.android.harvest.bean.c();
cVar.b("Android");
cVar.c("2.3");
cVar.d("Fake");
cVar.e("NullAgent");
cVar.f("AndroidAgent");
cVar.g("2.123");
cVar.h("389C9738-A761-44DE-8A66-1668CFD67DA1");
cVar.j("Fake Arch");
cVar.k("1.7.0");
cVar.l("Fake Size");
cVar.i("a.b.c");
return cVar;
}
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.a b() {
return new com.baidu.uaq.agent.android.harvest.bean.a("null", "0.0", "null");
}
@Override // com.baidu.uaq.agent.android.b
public String c() {
return "NULL";
}
@Override // com.baidu.uaq.agent.android.b
public String d() {
return CategoryModel.unknown;
}
@Override // com.baidu.uaq.agent.android.b
public com.baidu.uaq.agent.android.harvest.bean.d e() {
return new com.baidu.uaq.agent.android.harvest.bean.d(0L, 1, TransportFile.TYPE_NONE, TransportFile.TYPE_NONE, new long[]{0, 0});
}
@Override // com.baidu.uaq.agent.android.b
public void shutdown() {
}
@Override // com.baidu.uaq.agent.android.b
public void start() {
}
}

View File

@@ -0,0 +1,182 @@
package com.baidu.uaq.agent.android;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONTokener;
/* compiled from: SavedState.java */
/* loaded from: classes.dex */
public class f {
private static final com.baidu.uaq.agent.android.logging.a f = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ g = UAQ.getInstance();
private final SharedPreferences a;
private SharedPreferences.Editor b;
private final Lock c = new ReentrantLock();
private com.baidu.uaq.agent.android.harvest.bean.b d = new com.baidu.uaq.agent.android.harvest.bean.b();
private long e;
@SuppressLint({"CommitPrefEdits"})
public f(Context context) {
this.a = context.getSharedPreferences("com.baidu.uaq.android.agent.v2_" + context.getPackageName(), 0);
f();
c();
d();
g();
}
private void f() {
com.baidu.uaq.agent.android.harvest.bean.b h = h();
if (h == null) {
return;
}
this.d.a(h.e());
this.d.b(h.f());
}
private void g() {
if (!d("lastUpdateTimestamp")) {
c(System.currentTimeMillis());
}
k();
}
private com.baidu.uaq.agent.android.harvest.bean.b h() {
JSONArray jSONArray;
int[] iArr = new int[2];
String c = c("dataToken");
if (c == null) {
return null;
}
try {
jSONArray = (JSONArray) new JSONTokener(c).nextValue();
} catch (JSONException e) {
f.a("Caught error while getDataToken: ", e);
}
if (jSONArray == null) {
return null;
}
iArr[0] = jSONArray.getInt(0);
iArr[1] = jSONArray.getInt(1);
return new com.baidu.uaq.agent.android.harvest.bean.b(iArr[0], iArr[1]);
}
private long i() {
return b("dataReportPeriod");
}
private long j() {
return b("dataReportLimit");
}
private long k() {
return b("lastUpdateTimestamp");
}
public void a(long j) {
f.d("!! saving dataReportPeriod: " + j);
a("dataReportPeriod", j);
}
public long b() {
return this.e;
}
public final void c() {
if (d("dataReportPeriod")) {
this.e = i();
}
}
public final void d() {
if (!d("dataReportLimit")) {
b(g.getConfig().getDataReportLimit());
}
j();
}
public String e() {
return c("appToken");
}
public void b(long j) {
f.d("!! saving dataReportLimit: " + j);
a("dataReportLimit", j);
}
public void a(String str) {
a("appToken", str);
}
public void c(long j) {
f.d("!! saving lastUpdateTimestamp: " + j);
a("lastUpdateTimestamp", j);
}
private void a(String str, String str2) {
this.c.lock();
try {
try {
if (this.b == null) {
this.b = this.a.edit();
}
this.b.putString(str, str2);
this.b.apply();
} catch (Exception e) {
f.a("Caught error while SavedState save: ", e);
}
} finally {
this.c.unlock();
}
}
private long b(String str) {
return this.a.getLong(str, 0L);
}
private boolean d(String str) {
return this.a.contains(str);
}
private String c(String str) {
return this.a.getString(str, null);
}
private void a(String str, long j) {
this.c.lock();
try {
try {
if (this.b == null) {
this.b = this.a.edit();
}
this.b.putLong(str, j);
this.b.apply();
} catch (Exception e) {
f.a("Caught error while SavedState save: ", e);
}
} finally {
this.c.unlock();
}
}
public void a() {
this.c.lock();
try {
try {
if (this.b == null) {
this.b = this.a.edit();
}
this.b.clear();
this.b.apply();
} catch (Exception e) {
f.a("Caught error while clear SavedState: ", e);
}
} finally {
this.c.unlock();
}
}
}

View File

@@ -0,0 +1,69 @@
package com.baidu.uaq.agent.android;
import com.baidu.uaq.agent.android.harvest.bean.h;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
/* compiled from: TaskQueue.java */
/* loaded from: classes.dex */
public class g {
private static final com.baidu.uaq.agent.android.logging.a a = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ b = UAQ.getInstance();
private static final ScheduledExecutorService c = Executors.newSingleThreadScheduledExecutor(new com.baidu.uaq.agent.android.util.g("TaskQueue"));
private static final ConcurrentLinkedQueue<Object> d = new ConcurrentLinkedQueue<>();
private static final Runnable e = new Runnable() { // from class: com.baidu.uaq.agent.android.g.1
@Override // java.lang.Runnable
public void run() {
g.c();
}
};
private static Future f;
public static void a(Object obj) {
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() < 0 || b.isDisableCollect() || f == null) {
return;
}
d.add(obj);
}
public static void b() {
Future future = f;
if (future != null) {
future.cancel(true);
f = null;
a.d("TaskQueue stop");
}
}
/* JADX INFO: Access modifiers changed from: private */
public static void c() {
if (d.size() == 0) {
return;
}
while (!d.isEmpty()) {
try {
Object remove = d.remove();
if (remove instanceof com.baidu.uaq.agent.android.harvest.health.b) {
com.baidu.uaq.agent.android.harvest.multiharvest.d.a((com.baidu.uaq.agent.android.harvest.health.b) remove);
} else if (remove instanceof h) {
com.baidu.uaq.agent.android.harvest.multiharvest.d.a((h) remove);
} else if (remove instanceof com.baidu.uaq.agent.android.harvest.bean.f) {
com.baidu.uaq.agent.android.harvest.multiharvest.d.a((com.baidu.uaq.agent.android.harvest.bean.f) remove);
}
} catch (Exception e2) {
a.a("Caught error while TaskQueue dequeue: ", e2);
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
}
}
public static void a() {
if (f == null) {
f = c.scheduleAtFixedRate(e, 0L, 1000L, TimeUnit.MILLISECONDS);
a.d("TaskQueue start");
}
}
}

View File

@@ -0,0 +1,124 @@
package com.baidu.uaq.agent.android.harvest;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.harvest.bean.g;
import com.baidu.uaq.agent.android.harvest.bean.i;
import com.baidu.uaq.agent.android.harvest.bean.k;
import com.baidu.uaq.agent.android.harvest.type.c;
import com.unity3d.ads.metadata.MediationMetaData;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: HarvestData.java */
/* loaded from: classes.dex */
public class a extends c {
private static final UAQ i = UAQ.getInstance();
private static final com.baidu.uaq.agent.android.logging.a j = com.baidu.uaq.agent.android.logging.b.a();
private com.baidu.uaq.agent.android.harvest.bean.c c;
private com.baidu.uaq.agent.android.harvest.bean.a e;
private com.baidu.uaq.agent.android.harvest.bean.b b = new com.baidu.uaq.agent.android.harvest.bean.b();
private com.baidu.uaq.agent.android.harvest.health.a d = new com.baidu.uaq.agent.android.harvest.health.a();
private k f = new k(new com.baidu.uaq.agent.android.transmission.lss.a());
private i g = new i(new com.baidu.uaq.agent.android.trace.lss.a());
private g h = new g();
private JSONObject l() throws JSONException {
JSONObject jSONObject = new JSONObject();
jSONObject.put("wanType", com.baidu.uaq.agent.android.a.c());
jSONObject.put("carrier", com.baidu.uaq.agent.android.a.d());
jSONObject.put("timestamp", System.currentTimeMillis());
i.getConfig().getChannel();
if (i.getConfig().isThingsMonitor()) {
if (this.h.e() > 0) {
jSONObject.put("resourceData", this.h.b());
}
jSONObject.put("gateToken", i.getConfig().getAPIKey());
}
return jSONObject;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
jSONArray.put(0, this.b.b());
if (i.isNeedBasicInfo()) {
jSONArray.put(1, h().b());
} else {
jSONArray.put(1, new JSONArray());
}
jSONArray.put(2, this.g.b());
jSONArray.put(3, new JSONArray());
JSONArray jSONArray2 = new JSONArray();
for (Map.Entry<String, com.baidu.uaq.agent.android.metric.a> entry : com.baidu.uaq.agent.android.stats.a.b().a().entrySet()) {
JSONArray jSONArray3 = new JSONArray();
com.baidu.uaq.agent.android.metric.a value = entry.getValue();
JSONObject jSONObject = new JSONObject();
jSONObject.put(MediationMetaData.KEY_NAME, value.f());
jSONObject.put("scope", value.e());
jSONArray3.put(jSONObject);
jSONArray3.put(value.d());
jSONArray2.put(jSONArray3);
}
jSONArray.put(4, jSONArray2);
jSONArray.put(5, new JSONObject());
jSONArray.put(6, new JSONArray());
jSONArray.put(7, this.d.b());
if (i.isNeedBasicInfo()) {
jSONArray.put(8, i().b());
} else {
jSONArray.put(8, new JSONArray());
}
jSONArray.put(9, new JSONArray());
jSONArray.put(10, this.f.b());
jSONArray.put(11, l());
} catch (JSONException e) {
j.a("Caught error while HarvestData asJSONArray: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONArray;
}
public com.baidu.uaq.agent.android.harvest.health.a e() {
return this.d;
}
public i f() {
return this.g;
}
public g g() {
return this.h;
}
public com.baidu.uaq.agent.android.harvest.bean.c h() {
if (this.c == null) {
this.c = com.baidu.uaq.agent.android.a.e();
}
return this.c;
}
public com.baidu.uaq.agent.android.harvest.bean.a i() {
if (this.e == null) {
this.e = com.baidu.uaq.agent.android.a.f();
}
return this.e;
}
public com.baidu.uaq.agent.android.harvest.bean.b j() {
return this.b;
}
public void k() {
this.d.e();
}
public void a(com.baidu.uaq.agent.android.harvest.bean.b bVar) {
if (bVar == null) {
return;
}
this.b = bVar;
}
}

View File

@@ -0,0 +1,46 @@
package com.baidu.uaq.agent.android.harvest;
/* compiled from: HarvestResponse.java */
/* loaded from: classes.dex */
public class b {
private int a;
private String b;
private long c;
public boolean a() {
return this.a == 200;
}
public boolean b() {
int i = this.a;
return i == 200 || i == 201 || i == 202 || i == 203 || i == 204 || i == 205 || i == 206 || i == 207 || i == 208;
}
public String c() {
return this.b;
}
public long d() {
return this.c;
}
public int e() {
return this.a;
}
public boolean f() {
return this.a != 200;
}
public void a(int i) {
this.a = i;
}
public void a(String str) {
this.b = str;
}
public void a(long j) {
this.c = j;
}
}

View File

@@ -0,0 +1,48 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONArray;
import org.json.JSONException;
/* compiled from: ApplicationInformation.java */
/* loaded from: classes.dex */
public class a extends com.baidu.uaq.agent.android.harvest.type.c {
private static final com.baidu.uaq.agent.android.logging.a e = com.baidu.uaq.agent.android.logging.b.a();
private String b;
private String c;
private String d;
public a(String str, String str2, String str3) {
this.b = str;
this.c = str2;
this.d = str3;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
a(this.b);
jSONArray.put(0, this.b);
a(this.c);
jSONArray.put(1, this.c);
a(this.d);
jSONArray.put(2, this.d);
} catch (JSONException e2) {
e.a("Caught error while ApplicationInformation asJSONArray", e2);
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
return jSONArray;
}
public String e() {
return this.c;
}
public String f() {
return this.d;
}
public String g() {
return this.b;
}
}

View File

@@ -0,0 +1,71 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONArray;
import org.json.JSONException;
/* compiled from: DataToken.java */
/* loaded from: classes.dex */
public class b extends com.baidu.uaq.agent.android.harvest.type.c {
private static final com.baidu.uaq.agent.android.logging.a d = com.baidu.uaq.agent.android.logging.b.a();
private long b;
private long c;
public b() {
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
jSONArray.put(0, this.b);
jSONArray.put(1, this.c);
} catch (JSONException e) {
d.a("Caught error while DataToken asJSONArray: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONArray;
}
public void b(long j) {
this.c = j;
}
public long e() {
return this.b;
}
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || b.class != obj.getClass()) {
return false;
}
b bVar = (b) obj;
return this.b == bVar.b && this.c == bVar.c;
}
public long f() {
return this.c;
}
public int hashCode() {
long j = this.b;
int i = ((int) (j ^ (j >>> 32))) * 31;
long j2 = this.c;
return i + ((int) (j2 ^ (j2 >>> 32)));
}
public String toString() {
return "DataToken{accountId=" + this.b + ", agentId=" + this.c + '}';
}
public b(long j, long j2) {
this.b = j;
this.c = j2;
}
public void a(long j) {
this.b = j;
}
}

View File

@@ -0,0 +1,147 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: DeviceInformation.java */
/* loaded from: classes.dex */
public class c extends com.baidu.uaq.agent.android.harvest.type.c {
private static final com.baidu.uaq.agent.android.logging.a o = com.baidu.uaq.agent.android.logging.b.a();
private String b;
private String c;
private String d;
private String e;
private String f;
private String g;
private String h;
private String i;
private String j;
private String k;
private String l;
private String m;
private boolean n = false;
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
a(this.b);
jSONArray.put(0, this.b);
a(this.c);
jSONArray.put(1, this.c);
a(this.d);
a(this.e);
jSONArray.put(2, this.d + " " + this.e);
a(this.f);
jSONArray.put(3, this.f);
a(this.g);
jSONArray.put(4, this.g);
a(this.h);
jSONArray.put(5, this.h);
jSONArray.put(6, "");
jSONArray.put(7, "");
jSONArray.put(8, this.d);
JSONObject jSONObject = new JSONObject();
jSONObject.put("size", this.i);
jSONObject.put("CUID", this.j);
jSONArray.put(9, jSONObject);
} catch (JSONException e) {
o.a("Caught error while DeviceInformation asJSONArray: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONArray;
}
public void b(String str) {
this.b = str;
}
public void c(String str) {
this.c = str;
}
public void d(String str) {
this.d = str;
}
public void e(String str) {
this.e = str;
}
public void f(String str) {
this.f = str;
}
public void g(String str) {
this.g = str;
}
public void h(String str) {
this.h = str;
}
public void i(String str) {
this.k = str;
}
public void j(String str) {
this.l = str;
}
public void k(String str) {
this.m = str;
}
public String l() {
return this.h;
}
public String m() {
return this.d;
}
public String n() {
return this.e;
}
public String e() {
return this.c;
}
public String f() {
return this.l;
}
public String g() {
return this.m;
}
public String h() {
return this.i;
}
public String i() {
return this.k;
}
public boolean j() {
return this.n;
}
public String k() {
return this.j;
}
public void l(String str) {
this.i = str;
}
public void m(String str) {
this.j = str;
}
public void a(boolean z) {
this.n = z;
}
}

View File

@@ -0,0 +1,55 @@
package com.baidu.uaq.agent.android.harvest.bean;
/* compiled from: EnvironmentInformation.java */
/* loaded from: classes.dex */
public class d {
private long a;
private int b;
private String c;
private long[] d;
public d() {
}
public void a(long j) {
this.a = j;
}
public String b() {
return this.c;
}
public void b(String str) {
}
public long[] c() {
return this.d;
}
public int d() {
return this.b;
}
public d(long j, int i, String str, String str2, long[] jArr) {
this.a = j;
this.b = i;
this.c = str;
this.d = jArr;
}
public void a(int i) {
this.b = i;
}
public void a(String str) {
this.c = str;
}
public void a(long[] jArr) {
this.d = jArr;
}
public long a() {
return this.a;
}
}

View File

@@ -0,0 +1,38 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: ResourceData.java */
/* loaded from: classes.dex */
public class f extends com.baidu.uaq.agent.android.harvest.type.d {
private static final com.baidu.uaq.agent.android.logging.a d = com.baidu.uaq.agent.android.logging.b.a();
private long b;
private JSONObject c = new JSONObject();
public void a(String str, Object obj) {
try {
this.c.put(str, obj);
} catch (JSONException e) {
d.a("Caught error while addResourceValue: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("timestamp", this.b);
jSONObject.put("value", this.c);
} catch (JSONException e) {
d.a("Caught error while ResourceData asJSONObject: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONObject;
}
public void a(long j) {
this.b = j;
}
}

View File

@@ -0,0 +1,67 @@
package com.baidu.uaq.agent.android.harvest.bean;
import com.baidu.uaq.agent.android.UAQ;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: ResourceDatas.java */
/* loaded from: classes.dex */
public class g extends com.baidu.uaq.agent.android.harvest.type.d {
private static final com.baidu.uaq.agent.android.logging.a c = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ d = UAQ.getInstance();
private final List<f> b = new ArrayList();
public static void b(f fVar) {
if (d.getConfig().isThingsMonitor()) {
com.baidu.uaq.agent.android.g.a(fVar);
}
}
private List<f> f() {
synchronized (this) {
if (this.b.size() == 0) {
return Collections.emptyList();
}
ArrayList arrayList = new ArrayList(this.b);
this.b.clear();
return arrayList;
}
}
public synchronized void a(f fVar) {
this.b.add(fVar);
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("cycle", 10);
jSONObject.put("resourcearray", a());
} catch (JSONException e) {
c.a("Caught error while ResourceDatas asJSONObject: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONObject;
}
public int e() {
return this.b.size();
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
List<f> f = f();
JSONArray jSONArray = new JSONArray();
Iterator<f> it = f.iterator();
while (it.hasNext()) {
jSONArray.put(it.next().b());
}
return jSONArray;
}
}

View File

@@ -0,0 +1,27 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: Trace.java */
/* loaded from: classes.dex */
public class h extends com.baidu.uaq.agent.android.harvest.type.d {
private static final com.baidu.uaq.agent.android.logging.a c = com.baidu.uaq.agent.android.logging.b.a();
private String b;
public h(String str) {
this.b = str;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
/* renamed from: e, reason: merged with bridge method [inline-methods] */
public JSONObject b() {
try {
return new JSONObject(this.b);
} catch (JSONException e) {
c.a("Caught error while Transmission asJSONObject: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
return null;
}
}
}

View File

@@ -0,0 +1,51 @@
package com.baidu.uaq.agent.android.harvest.bean;
import com.baidu.uaq.agent.android.UAQ;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.json.JSONObject;
/* compiled from: Traces.java */
/* loaded from: classes.dex */
public class i extends com.baidu.uaq.agent.android.harvest.type.d {
private static final UAQ d;
private final List<h> b = new ArrayList();
private com.baidu.uaq.agent.android.trace.a c;
static {
com.baidu.uaq.agent.android.logging.b.a();
d = UAQ.getInstance();
}
public i(com.baidu.uaq.agent.android.trace.a aVar) {
this.c = aVar;
}
public static void b(h hVar) {
if (d.getConfig().isEnableTrace()) {
com.baidu.uaq.agent.android.g.a(hVar);
}
}
private List<h> e() {
synchronized (this) {
if (this.b.size() == 0) {
return Collections.emptyList();
}
ArrayList arrayList = new ArrayList(this.b);
this.b.clear();
return arrayList;
}
}
public synchronized void a(h hVar) {
this.b.add(hVar);
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
List<h> e = e();
return e.size() != 0 ? this.c.a(e) : new JSONObject();
}
}

View File

@@ -0,0 +1,23 @@
package com.baidu.uaq.agent.android.harvest.bean;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: Transmission.java */
/* loaded from: classes.dex */
public class j extends com.baidu.uaq.agent.android.harvest.type.d {
private static final com.baidu.uaq.agent.android.logging.a c = com.baidu.uaq.agent.android.logging.b.a();
private String b;
@Override // com.baidu.uaq.agent.android.harvest.type.a
/* renamed from: e, reason: merged with bridge method [inline-methods] */
public JSONObject b() {
try {
return new JSONObject(this.b);
} catch (JSONException e) {
c.a("Caught error while Transmission asJSONObject: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
return null;
}
}
}

View File

@@ -0,0 +1,40 @@
package com.baidu.uaq.agent.android.harvest.bean;
import com.baidu.uaq.agent.android.UAQ;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.json.JSONArray;
/* compiled from: Transmissions.java */
/* loaded from: classes.dex */
public class k extends com.baidu.uaq.agent.android.harvest.type.c {
private final List<j> b = new ArrayList();
private com.baidu.uaq.agent.android.transmission.a c;
static {
com.baidu.uaq.agent.android.logging.b.a();
UAQ.getInstance();
}
public k(com.baidu.uaq.agent.android.transmission.a aVar) {
this.c = aVar;
}
private List<j> e() {
synchronized (this) {
if (this.b.size() == 0) {
return Collections.emptyList();
}
ArrayList arrayList = new ArrayList(this.b);
this.b.clear();
return arrayList;
}
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
List<j> e = e();
return e.size() != 0 ? this.c.a(e) : new JSONArray();
}
}

View File

@@ -0,0 +1,40 @@
package com.baidu.uaq.agent.android.harvest.health;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.g;
import org.json.JSONArray;
/* compiled from: AgentHealth.java */
/* loaded from: classes.dex */
public class a extends com.baidu.uaq.agent.android.harvest.type.c {
private static final UAQ c;
private final c b = new c();
static {
com.baidu.uaq.agent.android.logging.b.a();
c = UAQ.getInstance();
}
public static void a(Exception exc) {
if (c.getConfig().isCollectAgentHealth() && exc != null) {
g.a(new b(exc));
}
}
public void e() {
this.b.e();
}
public void a(b bVar) {
this.b.a(bVar);
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
if (!this.b.f()) {
jSONArray.put(this.b.d());
}
return jSONArray;
}
}

View File

@@ -0,0 +1,89 @@
package com.baidu.uaq.agent.android.harvest.health;
import java.util.Map;
import java.util.concurrent.atomic.AtomicLong;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: AgentHealthException.java */
/* loaded from: classes.dex */
public class b extends com.baidu.uaq.agent.android.harvest.type.c {
private String b;
private String c;
private String d;
private StackTraceElement[] e;
private final AtomicLong f;
private Map<String, String> g;
public b(Exception exc) {
this(exc, Thread.currentThread().getName());
}
private JSONArray h() {
JSONArray jSONArray = new JSONArray();
for (StackTraceElement stackTraceElement : this.e) {
jSONArray.put(stackTraceElement.toString());
}
return jSONArray;
}
private JSONObject i() {
JSONObject jSONObject = new JSONObject();
try {
if (this.g != null) {
for (Map.Entry<String, String> entry : this.g.entrySet()) {
jSONObject.put(entry.getKey(), entry.getValue());
}
}
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
jSONArray.put(0, this.b);
jSONArray.put(1, this.c != null ? this.c : "");
jSONArray.put(2, this.d);
jSONArray.put(3, h());
jSONArray.put(4, this.f.get());
jSONArray.put(5, i());
} catch (JSONException e) {
e.printStackTrace();
}
return jSONArray;
}
public String e() {
return this.b;
}
public StackTraceElement[] f() {
return this.e;
}
public void g() {
this.f.getAndIncrement();
}
public b(Exception exc, String str) {
this(exc.getClass().getName(), exc.getMessage(), str, exc.getStackTrace());
}
public b(String str, String str2, String str3, StackTraceElement[] stackTraceElementArr) {
this(str, str2, str3, stackTraceElementArr, null);
}
public b(String str, String str2, String str3, StackTraceElement[] stackTraceElementArr, Map<String, String> map) {
this.f = new AtomicLong(1L);
this.b = str;
this.c = str2;
this.d = str3;
this.e = stackTraceElementArr;
this.g = map;
}
}

View File

@@ -0,0 +1,54 @@
package com.baidu.uaq.agent.android.harvest.health;
import com.baidu.uaq.agent.android.harvest.type.d;
import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: AgentHealthExceptions.java */
/* loaded from: classes.dex */
public class c extends d {
private final Map<String, b> b = new ConcurrentHashMap();
public void a(b bVar) {
String str = bVar.e() + bVar.f()[0].toString();
synchronized (this.b) {
b bVar2 = this.b.get(str);
if (bVar2 == null) {
this.b.put(str, bVar);
} else {
bVar2.g();
}
}
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
JSONArray jSONArray = new JSONArray();
try {
Iterator<b> it = this.b.values().iterator();
while (it.hasNext()) {
jSONArray.put(it.next().a());
}
jSONObject.put("Type", "AgentErrors");
jSONObject.put("Data", jSONArray);
} catch (JSONException e) {
e.printStackTrace();
}
return jSONObject;
}
public void e() {
synchronized (this.b) {
this.b.clear();
}
}
public boolean f() {
return this.b.isEmpty();
}
}

View File

@@ -0,0 +1,93 @@
package com.baidu.uaq.agent.android.harvest.multiharvest;
import android.app.Application;
import android.content.Context;
import com.baidu.uaq.agent.android.customtransmission.APMUploadConfigure;
import java.util.ArrayList;
import java.util.Iterator;
/* compiled from: MultiHarvest.java */
/* loaded from: classes.dex */
public class a {
private static final com.baidu.uaq.agent.android.logging.a e = com.baidu.uaq.agent.android.logging.b.a();
private static a f = new a();
private Context a;
private c b;
private final ArrayList<c> c = new ArrayList<>();
private int d = 0;
public static a c() {
return f;
}
private void d() {
if (this.b == null) {
APMUploadConfigure aPMUploadConfigure = new APMUploadConfigure(APMUploadConfigure.APMUPLOADNAME, "", null);
com.baidu.uaq.agent.android.customtransmission.b.a(aPMUploadConfigure);
this.b = new c(this.a, aPMUploadConfigure);
}
}
public synchronized void a(Context context) {
this.a = b(context);
this.d++;
if (this.d == 1) {
d();
this.b.c();
}
e.d("MultiHarvest start one time, instanceNumber now is " + this.d);
}
public synchronized void b() {
this.d--;
if (this.d == 0) {
synchronized (this.c) {
Iterator<c> it = this.c.iterator();
while (it.hasNext()) {
c next = it.next();
next.d();
next.a().a();
next.a().b();
}
this.c.clear();
}
com.baidu.uaq.agent.android.a.h();
com.baidu.uaq.agent.android.customtransmission.b.a().clear();
com.baidu.uaq.agent.android.customtransmission.b.b().clear();
if (this.b != null) {
this.b.d();
this.b.a().a();
this.b.a().b();
this.b = null;
}
}
e.d("MultiHarvest stop one time, instanceNumber now is " + this.d);
}
public void a(APMUploadConfigure aPMUploadConfigure) {
if (com.baidu.uaq.agent.android.customtransmission.b.a().containsKey(aPMUploadConfigure.getUploadName())) {
e.d("addUploadCofigure already exists:" + aPMUploadConfigure.getUploadName() + " size:" + com.baidu.uaq.agent.android.customtransmission.b.a().size());
com.baidu.uaq.agent.android.customtransmission.b.a(aPMUploadConfigure);
return;
}
com.baidu.uaq.agent.android.customtransmission.b.a(aPMUploadConfigure);
e.d("addUploadCofigure:" + aPMUploadConfigure.getUploadName());
f.b(aPMUploadConfigure);
}
public int a() {
return this.d;
}
private void b(APMUploadConfigure aPMUploadConfigure) {
c cVar = new c(this.a, aPMUploadConfigure);
cVar.c();
synchronized (this.c) {
this.c.add(cVar);
}
}
private static Context b(Context context) {
return !(context instanceof Application) ? context.getApplicationContext() : context;
}
}

View File

@@ -0,0 +1,229 @@
package com.baidu.uaq.agent.android.harvest.multiharvest;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.customtransmission.APMUploadConfigure;
import com.baidu.uaq.agent.android.util.e;
import com.baidu.uaq.agent.android.util.h;
import com.baidu.uaq.agent.android.util.l;
import com.ubt.jimu.unity.bluetooth.UnityActivity;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.scheme.PlainSocketFactory;
import org.apache.http.conn.scheme.Scheme;
import org.apache.http.conn.scheme.SchemeRegistry;
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.entity.ByteArrayEntity;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
/* compiled from: MultiHarvestConnection.java */
/* loaded from: classes.dex */
public class b {
private static final com.baidu.uaq.agent.android.logging.a b = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ c = UAQ.getInstance();
private HttpClient a;
private void a() {
int convert = (int) TimeUnit.MILLISECONDS.convert(20L, TimeUnit.SECONDS);
BasicHttpParams basicHttpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(basicHttpParams, convert);
HttpConnectionParams.setSoTimeout(basicHttpParams, convert);
HttpConnectionParams.setTcpNoDelay(basicHttpParams, true);
HttpConnectionParams.setSocketBufferSize(basicHttpParams, UnityActivity.BLOCKLY_TYPE_NONE);
SchemeRegistry schemeRegistry = new SchemeRegistry();
schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
schemeRegistry.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443));
this.a = new DefaultHttpClient(new ThreadSafeClientConnManager(basicHttpParams, schemeRegistry), basicHttpParams);
}
private HttpPost b(String str, APMUploadConfigure aPMUploadConfigure) {
return a(str, "deflate", aPMUploadConfigure);
}
private String c(String str) {
return (c.getConfig().isUseSsl() ? "https://" : "http://") + c.getConfig().getCollectorHost() + (":" + c.getConfig().getCollectorPort()) + str;
}
private HttpPost b(String str) {
return a(b(), str, "gzip");
}
private String b() {
return c("/sdk_push_stat");
}
public com.baidu.uaq.agent.android.harvest.b a(String str, APMUploadConfigure aPMUploadConfigure) {
if (str != null) {
l.a("MultiHarvest sendData = " + str);
HttpPost b2 = b(str.replace("\\/", "/"), aPMUploadConfigure);
if (b2 != null) {
long contentLength = b2.getEntity().getContentLength();
b.d("HarvestSize = " + contentLength + "bytes");
com.baidu.uaq.agent.android.stats.a.b().b("Supportability/AgentHealth/Collector/HarvestSize", contentLength);
}
return a(b2);
}
throw new IllegalArgumentException();
}
public com.baidu.uaq.agent.android.harvest.b a(String str) {
if (str != null) {
l.a("MultiHarvest sendData = " + str);
HttpPost b2 = b(str.replace("\\/", "/") + "\n");
if (b2 != null) {
long contentLength = b2.getEntity().getContentLength();
b.d("HarvestSize = " + contentLength + "bytes");
com.baidu.uaq.agent.android.stats.a.b().b("Supportability/AgentHealth/Collector/HarvestSize", contentLength);
}
return a(b2);
}
throw new IllegalArgumentException();
}
private HttpPost a(String str, String str2, APMUploadConfigure aPMUploadConfigure) {
String url = aPMUploadConfigure.getUrl();
b.d("MultiHarvest POST <uri> = " + url);
HttpPost httpPost = new HttpPost(url);
HashMap<String, String> headerMap = aPMUploadConfigure.getHeaderMap();
if (headerMap.size() <= 0) {
b.a("Http header is null");
}
for (Map.Entry<String, String> entry : headerMap.entrySet()) {
httpPost.addHeader(entry.getKey(), entry.getValue());
}
if (c.getConfig().getAPIKey() == null) {
b.a("Cannot create POST without an Application Token.");
return null;
}
if ("deflate".equals(str2)) {
httpPost.setEntity(new ByteArrayEntity(com.baidu.uaq.agent.android.util.b.a(str)));
} else {
try {
httpPost.setEntity(new StringEntity(str, "utf-8"));
} catch (UnsupportedEncodingException e) {
b.a("UTF-8 is unsupported");
throw new IllegalArgumentException(e);
}
}
return httpPost;
}
private HttpPost a(String str, String str2, String str3) {
String a;
b.d("MultiHarvest POST <uri> = " + str);
HttpPost httpPost = new HttpPost(str);
httpPost.addHeader("Content-Type", "application/json");
httpPost.addHeader("Content-Encoding", str3);
if (System.getProperty("http.agent") != null) {
httpPost.addHeader("User-Agent", System.getProperty("http.agent").trim());
}
httpPost.addHeader("X-UAQ-WanType", com.baidu.uaq.agent.android.a.c());
try {
String cuid = c.getConfig().getCuid();
if (cuid.equals("null")) {
com.baidu.uaq.agent.android.harvest.bean.c a2 = com.baidu.uaq.agent.android.a.a().a();
if (a2.j()) {
a = a2.l();
} else {
a = e.a(a2.l());
}
httpPost.addHeader("X-UAQ-UUID", a);
} else {
httpPost.addHeader("X-UAQ-UUID", e.a(cuid));
}
httpPost.addHeader("X-UAQ-Channel", e.a(c.getConfig().getChannel()));
} catch (Exception e) {
b.a("Caught error while createPost AES: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
if (c.getConfig().getAPIKey() == null) {
b.a("Cannot create POST without an Application Token.");
return null;
}
httpPost.addHeader("X-App-License-Key", c.getConfig().getAPIKey());
if ("deflate".equals(str3)) {
httpPost.setEntity(new ByteArrayEntity(com.baidu.uaq.agent.android.util.b.a(str2)));
} else if ("gzip".equals(str3)) {
httpPost.setEntity(new ByteArrayEntity(com.baidu.uaq.agent.android.util.b.a(str2, "utf-8")));
} else {
try {
httpPost.setEntity(new StringEntity(str2, "utf-8"));
} catch (UnsupportedEncodingException e2) {
b.a("UTF-8 is unsupported");
throw new IllegalArgumentException(e2);
}
}
return httpPost;
}
private com.baidu.uaq.agent.android.harvest.b a(HttpPost httpPost) {
if (httpPost == null) {
b.a("Failed to send POST to collector");
return null;
}
com.baidu.uaq.agent.android.harvest.b bVar = new com.baidu.uaq.agent.android.harvest.b();
try {
com.baidu.uaq.agent.android.stats.b bVar2 = new com.baidu.uaq.agent.android.stats.b();
bVar2.a();
if (this.a == null) {
a();
}
HttpResponse execute = this.a.execute(httpPost);
bVar.a(bVar2.b());
bVar.a(execute.getStatusLine().getStatusCode());
try {
bVar.a(a(execute));
} catch (IOException e) {
b.a("Failed to retrieve collector response: ", e);
}
return bVar;
} catch (Exception e2) {
b.a("Failed to send POST to collector: ", e2);
a(e2);
return null;
}
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARN: Type inference failed for: r5v4, types: [java.io.InputStream] */
/* JADX WARN: Type inference failed for: r5v5, types: [java.io.InputStream] */
/* JADX WARN: Type inference failed for: r5v7, types: [java.lang.String] */
private static String a(HttpResponse httpResponse) throws IOException {
char[] cArr = new char[UnityActivity.BLOCKLY_TYPE_NONE];
StringBuilder sb = new StringBuilder();
if (httpResponse == null || httpResponse.getEntity() == null) {
return null;
}
?? content = httpResponse.getEntity().getContent();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(content));
while (true) {
try {
int read = bufferedReader.read(cArr);
if (read < 0) {
content.close();
content = sb.toString();
return content;
}
sb.append(cArr, 0, read);
} catch (Exception unused) {
content.close();
return sb.toString();
}
}
}
private void a(Exception exc) {
com.baidu.uaq.agent.android.stats.a.b().a("Supportability/AgentHealth/Collector/ResponseErrorCodes/" + h.a(exc));
}
}

View File

@@ -0,0 +1,159 @@
package com.baidu.uaq.agent.android.harvest.multiharvest;
import android.content.Context;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.customtransmission.APMUploadConfigure;
import com.baidu.uaq.agent.android.util.g;
import com.baidu.uaq.agent.android.util.i;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
/* compiled from: MultiHarvestTimer.java */
/* loaded from: classes.dex */
public class c implements Runnable {
private static final UAQ i = UAQ.getInstance();
private static final com.baidu.uaq.agent.android.logging.a j = com.baidu.uaq.agent.android.logging.b.a();
private final d a;
private ScheduledExecutorService b = Executors.newSingleThreadScheduledExecutor(new g("HarvestTimer"));
private ScheduledFuture c;
private long d;
private long e;
private Context f;
private String g;
private APMUploadConfigure h;
public c(Context context, APMUploadConfigure aPMUploadConfigure) {
this.f = context;
this.g = aPMUploadConfigure.getUploadName();
this.h = aPMUploadConfigure;
this.a = new d(context, aPMUploadConfigure);
}
private void e() {
long j2 = j();
if (1000 + j2 < this.e && j2 != -1) {
j.d("HarvestTimer: Tick is too soon (" + j2 + " delta) Last tick time: " + this.d + " . Skipping.");
return;
}
j.d("================= Tick Begin for " + this.h.getUploadName() + " =====================");
j.d("HarvestTimer: time since last tick: " + j2);
long m = m();
try {
f();
} catch (Exception e) {
j.a("HarvestTimer: Exception in timer tick: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
this.d = m;
j.d("================= Tick End for " + this.h.getUploadName() + " =====================");
}
private void f() {
com.baidu.uaq.agent.android.stats.b bVar = new com.baidu.uaq.agent.android.stats.b();
bVar.a();
try {
this.a.a(this.h);
} catch (Exception e) {
j.a("HarvestTimer: Exception in harvest execute: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
long b = bVar.b();
j.d("HarvestTimer tick took " + b + "ms");
}
private long j() {
if (this.d == 0) {
return -1L;
}
return m() - this.d;
}
private void k() {
if (this.h == null) {
this.e = -1L;
return;
}
if (!i.d(this.f)) {
if (i.c(this.f)) {
this.e = this.h.getInterval4g();
return;
} else {
this.e = i.getConfig().getDataReportPeriod();
return;
}
}
j.d("getPeriod for name:" + this.h.getUploadName());
this.e = this.h.getIntervalWifi();
}
private void l() {
if (com.baidu.uaq.agent.android.customtransmission.b.a() != null) {
this.h = com.baidu.uaq.agent.android.customtransmission.b.a().get(this.g);
} else {
this.h = null;
}
}
private long m() {
return System.currentTimeMillis();
}
public d a() {
return this.a;
}
public boolean b() {
return this.c != null;
}
public void c() {
j.d("HarvestTimer: Start a harvestTimer, uploadName:" + this.h.getUploadName());
if (b()) {
j.b("HarvestTimer: Attempting to start while already running");
return;
}
k();
if (this.e <= 0) {
j.a("HarvestTimer: Refusing to start with a period <= 0 ms");
return;
}
j.d("HarvestTimer: Starting with a period of " + this.e + "ms");
System.currentTimeMillis();
this.c = this.b.scheduleAtFixedRate(this, 0L, this.e, TimeUnit.MILLISECONDS);
if (this.h.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
com.baidu.uaq.agent.android.g.a();
}
}
public void d() {
if (b()) {
j.d("HarvestTimer: Stop a harvestTimer when period is " + this.e + "ms");
this.c.cancel(true);
this.c = null;
}
}
@Override // java.lang.Runnable
public void run() {
synchronized (this) {
try {
e();
l();
long j2 = this.e;
k();
j.d("period lasPeriod:" + j2 + " now:" + this.e);
if (this.e <= 0) {
d();
} else if (j2 != this.e) {
this.c.cancel(true);
this.c = this.b.scheduleAtFixedRate(this, this.e, this.e, TimeUnit.MILLISECONDS);
}
} catch (Exception e) {
j.a("HarvestTimer: Exception in timer tick: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
}
}

View File

@@ -0,0 +1,542 @@
package com.baidu.uaq.agent.android.harvest.multiharvest;
import android.content.Context;
import android.content.SharedPreferences;
import com.baidu.uaq.agent.android.AgentConfig;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.customtransmission.APMUploadConfigure;
import com.baidu.uaq.agent.android.g;
import com.baidu.uaq.agent.android.harvest.bean.h;
import com.baidu.uaq.agent.android.util.e;
import com.baidu.uaq.agent.android.util.f;
import com.baidu.uaq.agent.android.util.i;
import com.tencent.open.SocialConstants;
import java.util.ArrayList;
import java.util.Iterator;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: MultiHarvester.java */
/* loaded from: classes.dex */
public class d {
private static final com.baidu.uaq.agent.android.logging.a k = com.baidu.uaq.agent.android.logging.b.a();
private static final UAQ l = UAQ.getInstance();
private static com.baidu.uaq.agent.android.harvest.a m;
private APMUploadConfigure a;
private b b;
private final f c;
private long d;
private long e;
private SharedPreferences f;
private SharedPreferences.Editor g;
private Context h;
private ArrayList<String> i = new ArrayList<>();
private a j;
/* compiled from: MultiHarvester.java */
/* renamed from: com.baidu.uaq.agent.android.harvest.multiharvest.d$1, reason: invalid class name */
static /* synthetic */ class AnonymousClass1 {
static final /* synthetic */ int[] a = new int[a.values().length];
static {
try {
a[a.CONNECTEDWIFI.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
a[a.CONNECTEDNOTWIFI.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
}
}
/* compiled from: MultiHarvester.java */
private enum a {
CONNECTEDWIFI,
CONNECTEDNOTWIFI,
DISCONNECTED
}
public d(Context context, APMUploadConfigure aPMUploadConfigure) {
this.h = context;
this.a = aPMUploadConfigure;
this.c = new f(context, aPMUploadConfigure.getUploadName());
this.f = context.getSharedPreferences("com.baidu.uaq.android.agent.v2_customer_", 0);
}
public static void a(com.baidu.uaq.agent.android.harvest.health.b bVar) {
m.e().a(bVar);
}
public static com.baidu.uaq.agent.android.harvest.a c() {
return m;
}
private void d() {
if (this.a.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME) && m == null) {
m = new com.baidu.uaq.agent.android.harvest.a();
}
if (this.b == null) {
this.b = new b();
}
}
private void e() {
if (this.j != a.CONNECTEDWIFI) {
return;
}
ArrayList<String> a2 = this.c.a();
if (a2.size() <= 0) {
return;
}
if (this.a.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
a(a2, this.c);
} else {
b(a2, this.c);
}
}
private a f() {
return i.d(this.h) ? a.CONNECTEDWIFI : i.c(this.h) ? a.CONNECTEDNOTWIFI : a.DISCONNECTED;
}
private long g() {
int i = AnonymousClass1.a[this.j.ordinal()];
if (i == 1) {
return this.a.getMaxBytesPeriodWifi();
}
if (i != 2) {
return 0L;
}
return this.a.getMaxBytesPeriod4g();
}
private long h() {
int i = AnonymousClass1.a[this.j.ordinal()];
if (i == 1) {
return this.a.getMaxBytesWifi();
}
if (i != 2) {
return 0L;
}
return this.a.getMaxBytes4g();
}
private String i() {
int i = AnonymousClass1.a[this.j.ordinal()];
if (i == 1) {
return this.a.getUploadName() + "_dataReportLimitWIFI";
}
if (i != 2) {
return null;
}
return this.a.getUploadName() + "_dataReportLimitNOTWIFI";
}
private void j() {
this.g = this.f.edit();
String i = i();
if (i == null) {
return;
}
k.d("saveMaxBytesState uploaded bytes:" + this.e + " key:" + i + " uploadStartTime:" + this.d);
this.g.putLong(i, this.e);
this.g.apply();
}
private void k() {
this.g = this.f.edit();
String i = i();
if (i == null) {
return;
}
String l2 = l();
k.d("saveIntervalState uploaded bytes:" + this.e + " key:" + i + " uploadStartTime:" + this.d + " dateKey:" + l2);
this.g.putLong(i, this.e);
this.g.putLong(l2, this.d);
this.g.apply();
}
private String l() {
return this.a.getUploadName() + "apmUploadStartDate";
}
private long m() {
Context context = this.h;
if (context == null) {
k.a("getUploadedBytes failed, context is null");
return -1L;
}
SharedPreferences sharedPreferences = context.getSharedPreferences("com.baidu.uaq.android.agent.v2_customer_", 0);
String i = i();
if (sharedPreferences == null || i == null) {
this.e = 0L;
return 0L;
}
long j = sharedPreferences.getLong(i, 0L);
this.e = j;
return j;
}
private long n() {
Context context = this.h;
if (context == null) {
k.a("getUploadStartTime failed, context is null");
return -1L;
}
SharedPreferences sharedPreferences = context.getSharedPreferences("com.baidu.uaq.android.agent.v2_customer_", 0);
String l2 = l();
if (sharedPreferences == null || l2 == null) {
this.d = 0L;
return 0L;
}
long j = sharedPreferences.getLong(l2, 0L);
this.d = j;
return j;
}
private void o() {
long currentTimeMillis = System.currentTimeMillis();
long j = this.d;
Boolean bool = true;
if (j != 0 && currentTimeMillis - j < g()) {
bool = false;
}
if (bool.booleanValue()) {
this.d = currentTimeMillis;
this.e = 0L;
k();
}
}
public void b() {
if (this.a.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
m.k();
} else {
this.i.clear();
}
}
public static void a(h hVar) {
m.f().a(hVar);
}
private void c(String str) {
com.baidu.uaq.agent.android.harvest.b a2 = this.b.a(a(str));
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() < 1) {
k.a("Agent has shutdown during startUpload");
} else {
if (a(a2)) {
return;
}
k.d("upload APM data failed!");
}
}
public static void a(com.baidu.uaq.agent.android.harvest.bean.f fVar) {
m.g().a(fVar);
}
private void b(Long l2) {
ArrayList<String> a2 = com.baidu.uaq.agent.android.customtransmission.b.a(this.a.getUploadName(), Boolean.valueOf(this.a.isEnableRetransmission()));
if (!this.i.isEmpty()) {
k.a("blockArray is not empty!");
}
if (a2 == null || a2.isEmpty()) {
return;
}
this.i.addAll(a2);
String executeMerge = this.a.getMergeBlockCallBack().executeMerge(this.i);
k.d("config name:" + this.a.getUploadName() + ", upload limit:" + l2 + ", curr uploads:" + this.e + ", length:" + executeMerge.length());
if (l2.longValue() != 0 && this.e + executeMerge.length() > l2.longValue()) {
if (this.j != a.CONNECTEDWIFI) {
b(this.a.getUploadName());
com.baidu.uaq.agent.android.customtransmission.b.b(this.a.getUploadName(), Boolean.valueOf(this.a.isEnableRetransmission()));
return;
} else {
com.baidu.uaq.agent.android.customtransmission.b.b(this.a.getUploadName(), Boolean.valueOf(this.a.isEnableRetransmission()));
return;
}
}
a(executeMerge, this.a);
this.e += executeMerge.length();
j();
}
public void a(APMUploadConfigure aPMUploadConfigure) {
this.a = aPMUploadConfigure;
d();
this.j = f();
if (this.j != a.DISCONNECTED) {
this.d = n();
this.e = m();
o();
k.d("harvester exec for :" + aPMUploadConfigure.getUploadName() + ", uploadStartTime:" + this.d + ", intervalUploadedBytes:" + this.e);
long h = h();
if (aPMUploadConfigure.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
a(Long.valueOf(h));
} else {
b(Long.valueOf(h));
}
if (h == 0 || this.e <= h) {
e();
}
} else {
a();
}
b();
}
public void a() {
if (this.a.getUploadName().equals(APMUploadConfigure.APMUPLOADNAME)) {
com.baidu.uaq.agent.android.harvest.a aVar = m;
a(aVar);
String c = aVar.c();
if (c != null) {
k.d("harvester exec for :" + this.a.getUploadName() + ", network is not connected, choose to localize data");
a(c, this.a.getUploadName());
return;
}
return;
}
ArrayList<String> a2 = com.baidu.uaq.agent.android.customtransmission.b.a(this.a.getUploadName(), Boolean.valueOf(this.a.isEnableRetransmission()));
if (a2 != null) {
this.i.addAll(a2);
k.d("harvester exec for :" + this.a.getUploadName() + ", network is not connected, choose to localize data");
b(this.a.getUploadName());
com.baidu.uaq.agent.android.customtransmission.b.b(this.a.getUploadName(), Boolean.valueOf(this.a.isEnableRetransmission()));
}
}
private void b(ArrayList<String> arrayList, f fVar) {
long h = h();
int size = arrayList.size();
k.d("handle localized data for " + this.a.getUploadName() + ", Local fileLen: " + size);
for (int i = 0; i < size; i++) {
String str = arrayList.get((size - i) - 1);
ArrayList<String> c = fVar.c(str);
if (c != null && c.size() != 0) {
k.d("handle localized file :" + str);
String executeMerge = this.a.getMergeBlockCallBack().executeMerge(c);
if (h != 0 && this.e + executeMerge.length() > h) {
k.d("upload data will exceeds upload limit");
return;
}
com.baidu.uaq.agent.android.harvest.b a2 = this.b.a(executeMerge.substring(0, executeMerge.length()), this.a);
if (a2 != null && a2.b()) {
fVar.a(str);
this.e += executeMerge.length();
j();
k.d("upload success, delete " + str + "; curr uploads:" + this.e + " length:" + executeMerge.length());
} else {
k.d("upload localized data for customer failed!");
}
}
}
}
private void a(Long l2) {
com.baidu.uaq.agent.android.harvest.a aVar = m;
a(aVar);
String c = aVar.c();
if (c.isEmpty()) {
return;
}
k.d("config name:" + this.a.getUploadName() + ", upload limit:" + l2 + ", curr uploads:" + this.e + ", length:" + c.length());
if (l2.longValue() != 0 && this.e + c.length() > l2.longValue()) {
if (this.j != a.CONNECTEDWIFI) {
a(c, this.a.getUploadName());
}
} else {
c(c);
this.e += c.length();
j();
}
}
private void a(ArrayList<String> arrayList, f fVar) {
long h = h();
int size = arrayList.size();
k.d("handle localized data for: " + this.a.getUploadName() + ", Local fileLen: " + size);
for (int i = 0; i < size; i++) {
String str = arrayList.get((size - i) - 1);
String b = fVar.b(str);
if (b != null && !b.isEmpty()) {
k.d("handle localized file :" + str);
if (h != 0 && this.e + b.length() > h) {
k.d("upload data will exceeds upload limit");
return;
}
com.baidu.uaq.agent.android.harvest.b a2 = this.b.a(a(b.substring(0, b.length() - 1)));
if (a2 != null && a2.a()) {
fVar.a(str);
this.e += b.length();
j();
k.d("upload success, delete " + str + "; curr uploads:" + this.e + " length:" + b.length());
}
if (com.baidu.uaq.agent.android.harvest.multiharvest.a.c().a() < 1) {
k.a("Agent has shutdown when handleLocalizedFile4APM");
} else if (!a(a2)) {
k.d("upload localized data failed");
}
}
}
}
private void b(String str) {
Iterator<String> it = this.i.iterator();
while (it.hasNext()) {
this.c.a(str, it.next());
k.d("Log Persist, fileList: " + this.c.a().size());
}
}
private static void b(com.baidu.uaq.agent.android.harvest.b bVar) {
com.baidu.uaq.agent.android.stats.a.b().a("Supportability/AgentHealth/Collector/HarvestTime", bVar.d());
k.d("HarvestTime = " + bVar.d() + "ms");
String c = bVar.c();
if (c != null && !c.isEmpty() && !"".equals(c)) {
try {
JSONObject jSONObject = new JSONObject(c);
if (!jSONObject.optString(SocialConstants.PARAM_SEND_MSG).isEmpty()) {
k.a("Err msg from server: " + jSONObject.getString(SocialConstants.PARAM_SEND_MSG));
return;
}
if (jSONObject.getBoolean("disableCollect")) {
if (l.isDisableCollect()) {
return;
}
k.c("disableCollect turn to true");
l.setSavedConfig(l.getConfig().newBuilder().build());
l.disableCollect();
g.b();
l.setDisableCollect(true);
return;
}
if (!jSONObject.getBoolean("disableCollect") && l.isDisableCollect()) {
k.c("disableCollect turn to false");
l.enableCollect(l.getSavedConfig());
g.a();
l.setDisableCollect(false);
}
com.baidu.uaq.agent.android.harvest.bean.b bVar2 = new com.baidu.uaq.agent.android.harvest.bean.b(jSONObject.getLong("accountId"), jSONObject.getLong("agentId"));
if (!bVar2.equals(m.j())) {
m.a(bVar2);
}
if (jSONObject.length() > 4) {
a(jSONObject);
}
l.setNeedBasicInfo(jSONObject.getBoolean("needBasicInfo"));
return;
} catch (JSONException e) {
k.a("Caught error while parse responseBody: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
return;
}
}
k.d("responseBody is Empty");
}
private void a(String str, String str2) {
this.c.a(str2, str);
k.d("localizeData4APM, localized file size: " + this.c.a().size());
}
private void a(String str, APMUploadConfigure aPMUploadConfigure) {
com.baidu.uaq.agent.android.harvest.b a2 = this.b.a(str, aPMUploadConfigure);
if (a2 != null && a2.b()) {
k.d("upload success");
com.baidu.uaq.agent.android.customtransmission.b.b(aPMUploadConfigure.getUploadName(), Boolean.valueOf(aPMUploadConfigure.isEnableRetransmission()));
} else {
k.d("upload customer data failed!");
}
}
private com.baidu.uaq.agent.android.harvest.a a(com.baidu.uaq.agent.android.harvest.a aVar) {
if (aVar.h().j()) {
return aVar;
}
try {
String a2 = e.a(aVar.h().e());
String a3 = e.a(aVar.h().n());
String a4 = e.a(aVar.h().l());
String a5 = e.a(aVar.h().m());
String a6 = e.a(aVar.h().k());
aVar.h().c(a2);
aVar.h().e(a3);
aVar.h().h(a4);
aVar.h().d(a5);
aVar.h().m(a6);
aVar.h().a(true);
return aVar;
} catch (Exception e) {
k.a("Caught error while data2AES: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
return aVar;
}
}
private boolean a(com.baidu.uaq.agent.android.harvest.b bVar) {
if (bVar == null) {
return false;
}
k.d("Harvest response status code: " + bVar.e());
if (bVar.f()) {
k.a("Harvest response error body: " + bVar.c());
m.k();
return false;
}
k.d("Harvest response body: " + bVar.c());
b(bVar);
return true;
}
private String a(String str) {
return "{\"version\":1,\"value\":[" + str + "]}";
}
private static void a(JSONObject jSONObject) {
boolean z;
AgentConfig.Builder newBuilder = l.getConfig().newBuilder();
try {
if (l.getConfig().isNativeControlDRP() || !jSONObject.has("dataReportPeriod") || l.getConfig().getDataReportPeriod() == jSONObject.getLong("dataReportPeriod")) {
z = false;
} else {
newBuilder.dataReportPeriod(jSONObject.getLong("dataReportPeriod"));
k.d("Update dataReportPeriod: " + jSONObject.getLong("dataReportPeriod"));
z = true;
}
if (jSONObject.has("dataReportLimit") && l.getConfig().getDataReportLimit() != jSONObject.getLong("dataReportLimit")) {
newBuilder.dataReportLimit(jSONObject.getLong("dataReportLimit"));
k.d("Update dataReportLimit: " + jSONObject.getLong("dataReportLimit"));
z = true;
}
if (jSONObject.has("responseBodyLimit") && l.getConfig().getResponseBodyLimit() != jSONObject.getLong("responseBodyLimit")) {
newBuilder.responseBodyLimit(jSONObject.getLong("responseBodyLimit"));
k.d("Update responseBodyLimit: " + jSONObject.getLong("responseBodyLimit"));
z = true;
}
if (jSONObject.has("sampleRate") && l.getConfig().getSampleRate() != jSONObject.getDouble("sampleRate")) {
newBuilder.sampleRate(jSONObject.getDouble("sampleRate"));
k.d("Update sampleRate: " + jSONObject.getDouble("sampleRate"));
z = true;
}
if (jSONObject.has("harvestableCacheLimit") && l.getConfig().getHarvestableCacheLimit() != jSONObject.getInt("harvestableCacheLimit")) {
newBuilder.harvestableCacheLimit(jSONObject.getInt("harvestableCacheLimit"));
k.d("Update harvestableCacheLimit: " + jSONObject.getInt("harvestableCacheLimit"));
z = true;
}
if (jSONObject.has("samplerFreq") && l.getConfig().getSamplerFreq() != jSONObject.getLong("samplerFreq")) {
newBuilder.samplerFreq(jSONObject.getLong("samplerFreq"));
k.d("Update samplerFreq: " + jSONObject.getLong("samplerFreq"));
z = true;
}
if (z) {
l.reconfig(newBuilder.build());
}
} catch (JSONException e) {
k.a("Caught error while updateAgentConfig: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
}

View File

@@ -0,0 +1,55 @@
package com.baidu.uaq.agent.android.harvest.type;
import com.baidu.uaq.agent.android.harvest.type.b;
import org.json.JSONArray;
import org.json.JSONObject;
/* compiled from: BaseHarvestable.java */
/* loaded from: classes.dex */
public class a implements b {
private final b.a a;
/* compiled from: BaseHarvestable.java */
/* renamed from: com.baidu.uaq.agent.android.harvest.type.a$1, reason: invalid class name */
static /* synthetic */ class AnonymousClass1 {
static final /* synthetic */ int[] a = new int[b.a.values().length];
static {
try {
a[b.a.OBJECT.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
a[b.a.ARRAY.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
}
}
public a(b.a aVar) {
this.a = aVar;
}
public JSONArray a() {
return null;
}
protected void a(String str) {
if (str == null || str.length() == 0) {
throw new IllegalArgumentException("Missing Harvestable field.");
}
}
public Object b() {
int i = AnonymousClass1.a[this.a.ordinal()];
return i != 1 ? i != 2 ? "" : a() : d();
}
public String c() {
return b().toString();
}
public JSONObject d() {
return null;
}
}

View File

@@ -0,0 +1,12 @@
package com.baidu.uaq.agent.android.harvest.type;
/* compiled from: Harvestable.java */
/* loaded from: classes.dex */
public interface b {
/* compiled from: Harvestable.java */
public enum a {
OBJECT,
ARRAY
}
}

View File

@@ -0,0 +1,11 @@
package com.baidu.uaq.agent.android.harvest.type;
import com.baidu.uaq.agent.android.harvest.type.b;
/* compiled from: HarvestableArray.java */
/* loaded from: classes.dex */
public abstract class c extends a {
public c() {
super(b.a.ARRAY);
}
}

View File

@@ -0,0 +1,11 @@
package com.baidu.uaq.agent.android.harvest.type;
import com.baidu.uaq.agent.android.harvest.type.b;
/* compiled from: HarvestableObject.java */
/* loaded from: classes.dex */
public abstract class d extends a {
public d() {
super(b.a.OBJECT);
}
}

View File

@@ -0,0 +1,17 @@
package com.baidu.uaq.agent.android.logging;
/* compiled from: AgentLog.java */
/* loaded from: classes.dex */
public interface a {
void a(int i);
void a(String str);
void a(String str, Throwable th);
void b(String str);
void c(String str);
void d(String str);
}

View File

@@ -0,0 +1,15 @@
package com.baidu.uaq.agent.android.logging;
/* compiled from: AgentLogManager.java */
/* loaded from: classes.dex */
public class b {
private static d a = new d();
public static a a() {
return a;
}
public static void a(a aVar) {
a.a(aVar);
}
}

View File

@@ -0,0 +1,53 @@
package com.baidu.uaq.agent.android.logging;
import android.util.Log;
/* compiled from: AndroidAgentLog.java */
/* loaded from: classes.dex */
public class c implements a {
private int a = 3;
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str) {
if (this.a >= 1) {
Log.e("com.baidu.uaq.agent.android", str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void b(String str) {
if (this.a >= 2) {
Log.w("com.baidu.uaq.agent.android", str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void c(String str) {
if (this.a >= 3) {
Log.i("com.baidu.uaq.agent.android", str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void d(String str) {
if (this.a == 5) {
Log.d("com.baidu.uaq.agent.android", str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str, Throwable th) {
if (this.a >= 1) {
Log.e("com.baidu.uaq.agent.android", str, th);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(int i) {
if (i <= 5 && i >= 1) {
this.a = i;
return;
}
throw new IllegalArgumentException("Log level is not between ERROR and DEBUG");
}
}

View File

@@ -0,0 +1,55 @@
package com.baidu.uaq.agent.android.logging;
/* compiled from: DefaultAgentLog.java */
/* loaded from: classes.dex */
public class d implements a {
private a a = new e();
public void a(a aVar) {
synchronized (this) {
this.a = aVar;
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void b(String str) {
synchronized (this) {
this.a.b(str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void c(String str) {
synchronized (this) {
this.a.c(str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void d(String str) {
synchronized (this) {
this.a.d(str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str) {
synchronized (this) {
this.a.a(str);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str, Throwable th) {
synchronized (this) {
this.a.a(str, th);
}
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(int i) {
synchronized (this) {
this.a.a(i);
}
}
}

View File

@@ -0,0 +1,29 @@
package com.baidu.uaq.agent.android.logging;
/* compiled from: NullAgentLog.java */
/* loaded from: classes.dex */
public class e implements a {
@Override // com.baidu.uaq.agent.android.logging.a
public void a(int i) {
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str) {
}
@Override // com.baidu.uaq.agent.android.logging.a
public void a(String str, Throwable th) {
}
@Override // com.baidu.uaq.agent.android.logging.a
public void b(String str) {
}
@Override // com.baidu.uaq.agent.android.logging.a
public void c(String str) {
}
@Override // com.baidu.uaq.agent.android.logging.a
public void d(String str) {
}
}

View File

@@ -0,0 +1,115 @@
package com.baidu.uaq.agent.android.metric;
import com.baidu.uaq.agent.android.harvest.type.d;
import com.baidu.uaq.agent.android.logging.b;
import com.liulishuo.filedownloader.model.FileDownloadModel;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: Metric.java */
/* loaded from: classes.dex */
public class a extends d {
private static final com.baidu.uaq.agent.android.logging.a j = b.a();
private String b;
private String c;
private Double d;
private Double e;
private Double f;
private Double g;
private Double h;
private long i;
public a(String str) {
this(str, null);
}
private void b(Double d) {
if (d == null) {
return;
}
if (this.e == null) {
this.e = d;
} else if (d.doubleValue() > this.e.doubleValue()) {
this.e = d;
}
}
public void a(double d) {
this.i++;
Double d2 = this.f;
if (d2 == null) {
this.f = Double.valueOf(d);
this.g = Double.valueOf(d * d);
} else {
this.f = Double.valueOf(d2.doubleValue() + d);
this.g = Double.valueOf(this.g.doubleValue() + (d * d));
}
a(Double.valueOf(d));
b(Double.valueOf(d));
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONObject d() {
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("count", this.i);
if (this.f != null) {
jSONObject.put(FileDownloadModel.TOTAL, this.f);
}
if (this.d != null) {
jSONObject.put("min", this.d);
}
if (this.e != null) {
jSONObject.put("max", this.e);
}
if (this.g != null) {
jSONObject.put("sum_of_squares", this.g);
}
if (this.h != null) {
jSONObject.put("exclusive", this.h);
}
} catch (JSONException e) {
j.a("Caught error while Metric asJSONObject: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONObject;
}
public String e() {
String str = this.c;
return str != null ? str : "";
}
public String f() {
return this.b;
}
public void g() {
a(1L);
}
public String toString() {
return "Metric{name='" + this.b + "', scope='" + this.c + "', min=" + this.d + ", max=" + this.e + ", total=" + this.f + ", sumOfSquares=" + this.g + ", exclusive=" + this.h + ", count=" + this.i + '}';
}
public a(String str, String str2) {
this.b = str;
this.c = str2;
this.i = 0L;
}
private void a(Double d) {
if (d == null) {
return;
}
if (this.d == null) {
this.d = d;
} else if (d.doubleValue() < this.d.doubleValue()) {
this.d = d;
}
}
public void a(long j2) {
this.i += j2;
}
}

View File

@@ -0,0 +1,25 @@
package com.baidu.uaq.agent.android.metric;
/* compiled from: MetricUnit.java */
/* loaded from: classes.dex */
public enum c {
PERCENT("%"),
BYTES("bytes"),
SECONDS("sec"),
BYTES_PER_SECOND("bytes/second"),
OPERATIONS("op");
private String label;
c(String str) {
this.label = str;
}
public void J(String str) {
this.label = str;
}
public String getLabel() {
return this.label;
}
}

View File

@@ -0,0 +1,148 @@
package com.baidu.uaq.agent.android.sample;
import android.content.Context;
import android.os.Process;
import com.baidu.uaq.agent.android.UAQ;
import com.baidu.uaq.agent.android.tracing.a;
import com.baidu.uaq.agent.android.util.g;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.ArrayList;
import java.util.Collection;
import java.util.EnumMap;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.ReentrantLock;
/* compiled from: Sampler.java */
/* loaded from: classes.dex */
public class a {
private static final int[] d = {Process.myPid()};
private static final com.baidu.uaq.agent.android.logging.a e = com.baidu.uaq.agent.android.logging.b.a();
private static final ReentrantLock f;
private static a g;
private static boolean h;
private static Long i;
private static Long j;
private static RandomAccessFile k;
private static RandomAccessFile l;
private final EnumMap<a.EnumC0004a, Collection<com.baidu.uaq.agent.android.tracing.a>> a = new EnumMap<>(a.EnumC0004a.class);
private final AtomicBoolean b;
private ScheduledFuture c;
static {
UAQ.getInstance();
f = new ReentrantLock();
h = false;
}
private a(Context context) {
Executors.newSingleThreadScheduledExecutor(new g("Sampler"));
this.b = new AtomicBoolean(false);
this.a.put((EnumMap<a.EnumC0004a, Collection<com.baidu.uaq.agent.android.tracing.a>>) a.EnumC0004a.MEMORY, (a.EnumC0004a) new ArrayList());
this.a.put((EnumMap<a.EnumC0004a, Collection<com.baidu.uaq.agent.android.tracing.a>>) a.EnumC0004a.CPU, (a.EnumC0004a) new ArrayList());
}
public static void a(Context context) {
com.baidu.uaq.agent.android.logging.a aVar = e;
StringBuilder sb = new StringBuilder();
sb.append("Sampler init sampleLock");
sb.append(f == null);
aVar.d(sb.toString());
f.lock();
try {
try {
if (g == null) {
g = new a(context);
}
} catch (Exception e2) {
e.a("Caught error while Sampler init: ", e2);
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
} finally {
f.unlock();
}
}
private void b() {
i = null;
j = null;
RandomAccessFile randomAccessFile = l;
if (randomAccessFile == null || k == null) {
return;
}
try {
randomAccessFile.close();
k.close();
l = null;
k = null;
} catch (IOException e2) {
e.a("Exception hit while resetting CPU sampler: ", e2);
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
}
/* JADX WARN: Removed duplicated region for block: B:38:0x0103 */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct code enable 'Show inconsistent code' option in preferences
*/
public static com.baidu.uaq.agent.android.tracing.a c() {
/*
Method dump skipped, instructions count: 300
To view this dump change 'Code comments level' option to 'DEBUG'
*/
throw new UnsupportedOperationException("Method not decompiled: com.baidu.uaq.agent.android.sample.a.c():com.baidu.uaq.agent.android.tracing.a");
}
public static void d() {
com.baidu.uaq.agent.android.logging.a aVar = e;
StringBuilder sb = new StringBuilder();
sb.append("Sampler shutdown sampleLock");
sb.append(f == null);
aVar.d(sb.toString());
f.lock();
try {
if (g != null) {
a();
g = null;
e.d("Sampler shutdown");
}
} finally {
f.unlock();
}
}
private void a(boolean z) {
f.lock();
try {
try {
if (this.b.get()) {
this.b.set(false);
if (this.c != null) {
this.c.cancel(z);
}
b();
e.d("Sampler canceled");
}
} catch (Exception e2) {
e.a("Caught error while Sampler stop: ", e2);
}
} finally {
f.unlock();
}
}
private static void a() {
f.lock();
try {
if (g != null) {
g.a(true);
e.d("Sampler hard stopped");
}
} finally {
f.unlock();
}
}
}

View File

@@ -0,0 +1,257 @@
package com.baidu.uaq.agent.android.sample;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.os.Looper;
import android.telephony.PhoneStateListener;
import android.telephony.SignalStrength;
import android.telephony.TelephonyManager;
import com.baidu.uaq.agent.android.harvest.bean.f;
import com.baidu.uaq.agent.android.util.g;
import com.ijm.dataencryption.de.DataDecryptTool;
import java.lang.reflect.InvocationTargetException;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.ReentrantLock;
/* compiled from: SamplerCommon.java */
/* loaded from: classes.dex */
public class b implements Runnable {
private static Context n;
private static b q;
private static TelephonyManager s;
public static a t;
private ScheduledFuture c;
private f d;
private float f;
private float g;
private float h;
private float i;
private float j;
private float k;
private float l;
private static final com.baidu.uaq.agent.android.logging.a m = com.baidu.uaq.agent.android.logging.b.a();
private static final Long o = 10000L;
private static final ReentrantLock p = new ReentrantLock();
private static double r = 0.0d;
private double e = 0.0d;
private final ScheduledExecutorService a = Executors.newSingleThreadScheduledExecutor(new g("SamplerCommon"));
private final AtomicBoolean b = new AtomicBoolean(false);
/* compiled from: SamplerCommon.java */
private static class a extends PhoneStateListener {
private static int a;
private a() {
}
public static int a() {
return a;
}
@Override // android.telephony.PhoneStateListener
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
super.onSignalStrengthsChanged(signalStrength);
try {
a = ((Integer) signalStrength.getClass().getMethod("getDbm", new Class[0]).invoke(signalStrength, new Object[0])).intValue();
} catch (IllegalAccessException e) {
b.m.a("Caught error while getDbm: ", e);
} catch (NoSuchMethodException e2) {
b.m.a("Caught error while getDbm: ", e2);
} catch (InvocationTargetException e3) {
b.m.a("Caught error while getDbm: ", e3);
}
}
}
private b() {
}
public static void a(Context context) {
p.lock();
try {
if (q == null) {
n = context;
q = new b();
l();
} else {
m.d("sampler not null when init samplerCommon!");
}
} finally {
p.unlock();
}
}
private void b() {
p.lock();
try {
this.d = new f();
this.d.a(System.currentTimeMillis());
a(0);
e();
c();
com.baidu.uaq.agent.android.harvest.bean.g.b(this.d);
} finally {
p.unlock();
}
}
private void c() {
NetworkInfo activeNetworkInfo = ((ConnectivityManager) n.getSystemService("connectivity")).getActiveNetworkInfo();
if (!a(activeNetworkInfo)) {
this.d.a("networkState", 0);
this.d.a("networkDbmStrength", 2);
} else if (b(activeNetworkInfo)) {
this.d.a("networkState", 1);
this.d.a("networkDbmStrength", Integer.valueOf(d()));
} else if (c(activeNetworkInfo)) {
this.d.a("networkState", 2);
this.d.a("networkDbmStrength", Integer.valueOf(a.a()));
}
}
private int d() {
return ((WifiManager) n.getSystemService("wifi")).getConnectionInfo().getRssi();
}
/* JADX WARN: Removed duplicated region for block: B:77:0x0177 A[EXC_TOP_SPLITTER, SYNTHETIC] */
/* JADX WARN: Unsupported multi-entry loop pattern (BACK_EDGE: B:64:0x0170 -> B:36:0x0173). Please report as a decompilation issue!!! */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct code enable 'Show inconsistent code' option in preferences
*/
private void e() {
/*
Method dump skipped, instructions count: 384
To view this dump change 'Code comments level' option to 'DEBUG'
*/
throw new UnsupportedOperationException("Method not decompiled: com.baidu.uaq.agent.android.sample.b.e():void");
}
private static void j() {
p.lock();
try {
if (q != null) {
q.a(true);
m.d("SamplerCommon hard stopped");
}
} finally {
p.unlock();
}
}
public static void k() {
p.lock();
try {
if (q != null) {
j();
q = null;
m.d("SamplerCommon shutdown");
} else {
m.d("SamplerCommon shutdown start, sampler null!");
}
} finally {
p.unlock();
}
}
public static void l() {
p.lock();
try {
m.d("SamplerCommon start!");
s = (TelephonyManager) n.getSystemService("phone");
if (t == null) {
new Handler(Looper.getMainLooper()).post(new Runnable() { // from class: com.baidu.uaq.agent.android.sample.b.1
@Override // java.lang.Runnable
public void run() {
b.t = new a();
}
});
}
s.listen(t, DataDecryptTool.DECRYPT_ALL_FILE);
q.a();
} finally {
p.unlock();
}
}
@Override // java.lang.Runnable
public void run() {
try {
if (this.b.get()) {
b();
}
} catch (Exception e) {
m.a("Caught error while Sampler run: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
private void a(boolean z) {
p.lock();
try {
try {
if (this.b.get()) {
this.b.set(false);
if (this.c != null) {
this.c.cancel(z);
}
m.d("SamplerCommon canceled");
}
} catch (Exception e) {
m.a("Caught error while Sampler stop: ", e);
}
} finally {
p.unlock();
}
}
private boolean b(NetworkInfo networkInfo) {
return networkInfo != null && networkInfo.isConnected() && networkInfo.getType() == 1;
}
private boolean c(NetworkInfo networkInfo) {
return networkInfo != null && networkInfo.isConnected() && networkInfo.getType() == 0;
}
private void a() {
p.lock();
try {
if (!this.b.get()) {
this.c = this.a.scheduleWithFixedDelay(this, o.longValue(), o.longValue(), TimeUnit.MILLISECONDS);
this.b.set(true);
}
} finally {
p.unlock();
}
}
private void a(int i) {
if (i >= 2) {
this.d.a("appCpuUsagePercentage", Double.valueOf(r));
return;
}
int i2 = i + 1;
com.baidu.uaq.agent.android.tracing.a c = com.baidu.uaq.agent.android.sample.a.c();
if (c != null) {
this.e = ((Double) c.e().a()).doubleValue();
double d = this.e;
if (d <= 100.0d && d >= 0.0d) {
this.d.a("appCpuUsagePercentage", Double.valueOf(d));
r = this.e;
return;
}
}
a(i2);
}
private static boolean a(NetworkInfo networkInfo) {
return networkInfo != null && networkInfo.isConnected();
}
}

View File

@@ -0,0 +1,56 @@
package com.baidu.uaq.agent.android.stats;
import com.baidu.uaq.agent.android.UAQ;
import java.util.concurrent.ConcurrentHashMap;
/* compiled from: StatsEngine.java */
/* loaded from: classes.dex */
public class a {
private static final a b = new a();
private static final UAQ c = UAQ.getInstance();
private ConcurrentHashMap<String, com.baidu.uaq.agent.android.metric.a> a = new ConcurrentHashMap<>();
private a() {
}
public static a b() {
return b;
}
public void a(String str) {
com.baidu.uaq.agent.android.metric.a b2 = b(str);
synchronized (b2) {
b2.g();
}
}
public void b(String str, long j) {
a(str, j / 1024.0f);
}
private com.baidu.uaq.agent.android.metric.a b(String str) {
com.baidu.uaq.agent.android.metric.a aVar = this.a.get(str);
if (aVar == null) {
aVar = new com.baidu.uaq.agent.android.metric.a(str);
if (c.getConfig().isEnableStatsEngine()) {
this.a.put(str, aVar);
}
}
return aVar;
}
public void a(String str, long j) {
a(str, j / 1000.0f);
}
public void a(String str, float f) {
com.baidu.uaq.agent.android.metric.a b2 = b(str);
synchronized (b2) {
b2.a(f);
}
}
public ConcurrentHashMap<String, com.baidu.uaq.agent.android.metric.a> a() {
return this.a;
}
}

View File

@@ -0,0 +1,29 @@
package com.baidu.uaq.agent.android.stats;
/* compiled from: TicToc.java */
/* loaded from: classes.dex */
public class b {
private long a;
private long b;
private a c;
/* compiled from: TicToc.java */
private enum a {
STOPPED,
STARTED
}
public void a() {
this.c = a.STARTED;
this.a = System.currentTimeMillis();
}
public long b() {
this.b = System.currentTimeMillis();
if (this.c != a.STARTED) {
return -1L;
}
this.c = a.STOPPED;
return this.b - this.a;
}
}

View File

@@ -0,0 +1,11 @@
package com.baidu.uaq.agent.android.trace;
import com.baidu.uaq.agent.android.harvest.bean.h;
import java.util.List;
import org.json.JSONObject;
/* compiled from: TraceParser.java */
/* loaded from: classes.dex */
public interface a {
JSONObject a(List<h> list);
}

View File

@@ -0,0 +1,155 @@
package com.baidu.uaq.agent.android.trace.lss;
import com.baidu.uaq.agent.android.harvest.bean.h;
import com.baidu.uaq.agent.android.logging.b;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: LssTraceParser.java */
/* loaded from: classes.dex */
public class a implements com.baidu.uaq.agent.android.trace.a {
private static final com.baidu.uaq.agent.android.logging.a c = b.a();
private static final Map<String, JSONObject> d = new HashMap();
Map<String, JSONArray> a = new HashMap();
Map<String, JSONArray> b = new HashMap();
private JSONObject b(JSONObject jSONObject) {
JSONArray jSONArray = new JSONArray();
try {
for (Map.Entry<String, JSONObject> entry : d.entrySet()) {
JSONObject value = entry.getValue();
value.put("Events", this.a.get(entry.getKey()));
jSONArray.put(value);
}
jSONObject.put("Traces", jSONArray);
} catch (JSONException e) {
c.a("Caught error while LssTraceParser parse: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONObject;
}
private void c(JSONObject jSONObject) {
try {
Object obj = jSONObject.get("Trace");
JSONObject jSONObject2 = obj instanceof JSONObject ? (JSONObject) obj : null;
if (jSONObject2 == null || jSONObject2.isNull("TraceId") || jSONObject2.getString("TraceId").isEmpty()) {
c.b("TraceId should not be empty");
return;
}
String str = jSONObject2.getString("TraceId") + d(jSONObject2);
Object remove = jSONObject2.remove("Event");
if (this.a.containsKey(str)) {
this.a.get(str).put(remove);
} else {
this.a.put(str, new JSONArray().put(remove));
d.put(str, jSONObject2);
}
} catch (JSONException e) {
c.a("Caught error while LssTraceParser parse: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
private String d(JSONObject jSONObject) {
if (jSONObject.isNull("CommData")) {
return null;
}
try {
Object obj = jSONObject.get("CommData");
if (!(obj instanceof JSONObject)) {
return null;
}
JSONObject jSONObject2 = (JSONObject) obj;
if (jSONObject2.isNull("playID") || jSONObject2.getString("playID").isEmpty()) {
return null;
}
return (String) jSONObject2.get("playID");
} catch (JSONException e) {
c.a("Caught error while getPlayID: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
return null;
}
}
@Override // com.baidu.uaq.agent.android.trace.a
public JSONObject a(List<h> list) {
Iterator<h> it = list.iterator();
JSONObject jSONObject = new JSONObject();
while (it.hasNext()) {
JSONObject b = it.next().b();
if (b != null) {
Iterator<String> keys = b.keys();
while (keys.hasNext()) {
String next = keys.next();
if (next.equals("Trace")) {
c(b);
} else {
a(b, next);
}
keys.remove();
}
it.remove();
}
}
b(jSONObject);
a(jSONObject);
a();
return jSONObject;
}
private void a() {
Map<String, JSONObject> map = d;
if (map != null) {
map.clear();
}
Map<String, JSONArray> map2 = this.a;
if (map2 != null) {
map2.clear();
}
Map<String, JSONArray> map3 = this.b;
if (map3 != null) {
map3.clear();
}
}
private JSONObject a(JSONObject jSONObject) {
for (Map.Entry<String, JSONArray> entry : this.b.entrySet()) {
if (jSONObject != null) {
try {
jSONObject.put(entry.getKey(), this.b.get(entry.getKey()));
} catch (JSONException e) {
c.a("Caught error while LssTraceParser parse: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
}
return jSONObject;
}
private void a(JSONObject jSONObject, String str) {
new JSONArray();
try {
if (this.b.containsKey(str)) {
JSONArray jSONArray = this.b.get(str);
Object obj = jSONObject.get(str);
if (obj instanceof JSONObject) {
jSONArray.put(obj);
}
} else {
Object obj2 = jSONObject.get(str);
if (obj2 instanceof JSONObject) {
this.b.put(str, new JSONArray().put(obj2));
}
}
} catch (JSONException e) {
c.a("Caught error while LssTraceParser parse: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
}
}

View File

@@ -0,0 +1,53 @@
package com.baidu.uaq.agent.android.tracing;
import com.baidu.uaq.agent.android.harvest.type.c;
import org.json.JSONArray;
import org.json.JSONException;
/* compiled from: Sample.java */
/* loaded from: classes.dex */
public class a extends c {
private static final com.baidu.uaq.agent.android.logging.a d = com.baidu.uaq.agent.android.logging.b.a();
private long b;
private b c;
/* compiled from: Sample.java */
/* renamed from: com.baidu.uaq.agent.android.tracing.a$a, reason: collision with other inner class name */
public enum EnumC0004a {
MEMORY,
CPU
}
public a(EnumC0004a enumC0004a) {
a(enumC0004a);
a(System.currentTimeMillis());
}
@Override // com.baidu.uaq.agent.android.harvest.type.a
public JSONArray a() {
JSONArray jSONArray = new JSONArray();
try {
jSONArray.put(0, this.b);
jSONArray.put(1, this.c.a());
} catch (JSONException e) {
d.a("Caught error while Sample asJSONArray: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONArray;
}
public void a(EnumC0004a enumC0004a) {
}
public b e() {
return this.c;
}
public void a(long j) {
this.b = j;
}
public void a(double d2) {
this.c = new b(d2);
}
}

View File

@@ -0,0 +1,29 @@
package com.baidu.uaq.agent.android.tracing;
/* compiled from: SampleValue.java */
/* loaded from: classes.dex */
public class b {
private Double a = Double.valueOf(0.0d);
private boolean b;
public b(double d) {
a(d);
}
public Number a() {
return this.b ? b() : c();
}
public Double b() {
return this.a;
}
public Long c() {
return Long.valueOf(this.a.longValue());
}
public void a(double d) {
this.a = Double.valueOf(d);
this.b = true;
}
}

View File

@@ -0,0 +1,11 @@
package com.baidu.uaq.agent.android.transmission;
import com.baidu.uaq.agent.android.harvest.bean.j;
import java.util.List;
import org.json.JSONArray;
/* compiled from: DataParser.java */
/* loaded from: classes.dex */
public interface a {
JSONArray a(List<j> list);
}

View File

@@ -0,0 +1,51 @@
package com.baidu.uaq.agent.android.transmission.lss;
import com.baidu.uaq.agent.android.harvest.bean.j;
import com.baidu.uaq.agent.android.logging.b;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* compiled from: LssDataParser.java */
/* loaded from: classes.dex */
public class a implements com.baidu.uaq.agent.android.transmission.a {
private static final com.baidu.uaq.agent.android.logging.a a = b.a();
@Override // com.baidu.uaq.agent.android.transmission.a
public JSONArray a(List<j> list) {
JSONArray jSONArray = new JSONArray();
HashMap hashMap = new HashMap();
HashMap hashMap2 = new HashMap();
try {
Iterator<j> it = list.iterator();
while (it.hasNext()) {
JSONObject b = it.next().b();
if (b != null) {
String string = b.getJSONObject("baseInfo").getString("vvid");
if (hashMap.containsKey(string)) {
JSONArray jSONArray2 = (JSONArray) hashMap2.get(string);
b.remove("baseInfo");
jSONArray2.put(b);
} else {
hashMap.put(string, new JSONObject().put("baseInfo", b.remove("baseInfo")));
hashMap2.put(string, new JSONArray().put(b));
}
}
it.remove();
}
for (Map.Entry entry : hashMap.entrySet()) {
JSONObject jSONObject = (JSONObject) entry.getValue();
jSONObject.put("events", hashMap2.get((String) entry.getKey()));
jSONArray.put(jSONObject);
}
} catch (JSONException e) {
a.a("Caught error while LssDataParser parse: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return jSONArray;
}
}

View File

@@ -0,0 +1,95 @@
package com.baidu.uaq.agent.android.util;
import com.baidu.uaq.agent.android.logging.a;
import com.ubt.jimu.unity.bluetooth.UnityActivity;
import java.io.ByteArrayOutputStream;
import java.io.Closeable;
import java.io.IOException;
import java.util.zip.Deflater;
import java.util.zip.GZIPOutputStream;
/* compiled from: CompressUtil.java */
/* loaded from: classes.dex */
public class b {
private static final a a = com.baidu.uaq.agent.android.logging.b.a();
public static byte[] a(String str, String str2) {
ByteArrayOutputStream byteArrayOutputStream;
if (str == null || str.length() == 0) {
return null;
}
try {
byteArrayOutputStream = new ByteArrayOutputStream();
} catch (IOException e) {
e = e;
byteArrayOutputStream = null;
} catch (Throwable th) {
th = th;
byteArrayOutputStream = null;
a(byteArrayOutputStream);
throw th;
}
try {
try {
GZIPOutputStream gZIPOutputStream = new GZIPOutputStream(byteArrayOutputStream);
gZIPOutputStream.write(str.getBytes(str2));
gZIPOutputStream.close();
byte[] byteArray = byteArrayOutputStream.toByteArray();
a(byteArrayOutputStream);
return byteArray;
} catch (Throwable th2) {
th = th2;
a(byteArrayOutputStream);
throw th;
}
} catch (IOException e2) {
e = e2;
a.a("gzip compress exception: ", e);
a(byteArrayOutputStream);
return null;
}
}
public static byte[] a(String str) {
Throwable th;
ByteArrayOutputStream byteArrayOutputStream;
Deflater deflater;
try {
deflater = new Deflater();
deflater.setInput(str.getBytes());
deflater.finish();
byteArrayOutputStream = new ByteArrayOutputStream();
} catch (Throwable th2) {
th = th2;
byteArrayOutputStream = null;
}
try {
byte[] bArr = new byte[UnityActivity.BLOCKLY_TYPE_NONE];
while (!deflater.finished()) {
int deflate = deflater.deflate(bArr);
if (deflate <= 0) {
a.a("HTTP request contains an incomplete payload");
}
byteArrayOutputStream.write(bArr, 0, deflate);
}
deflater.end();
byte[] byteArray = byteArrayOutputStream.toByteArray();
a(byteArrayOutputStream);
return byteArray;
} catch (Throwable th3) {
th = th3;
a(byteArrayOutputStream);
throw th;
}
}
public static void a(Closeable closeable) {
if (closeable != null) {
try {
closeable.close();
} catch (IOException unused) {
a.a("Failed to close io.");
}
}
}
}

View File

@@ -0,0 +1,17 @@
package com.baidu.uaq.agent.android.util;
/* compiled from: CustomException.java */
/* loaded from: classes.dex */
public class c extends Exception {
public c(String str) {
this(str, null);
}
public c(String str, Throwable th) {
super(str, th);
}
public c(Throwable th) {
super(th);
}
}

View File

@@ -0,0 +1,287 @@
package com.baidu.uaq.agent.android.util;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Environment;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import java.io.File;
import java.util.UUID;
/* compiled from: DeviceUtil.java */
/* loaded from: classes.dex */
public class d {
private static final com.baidu.uaq.agent.android.logging.a a = com.baidu.uaq.agent.android.logging.b.a();
private static String b = null;
private static File c = new File(Environment.getDataDirectory(), "uaq_installation");
/* compiled from: DeviceUtil.java */
public enum a {
UNKNOWN,
SMALL,
NORMAL,
LARGE,
XLARGE
}
public static a a(Context context) {
int i = context.getResources().getConfiguration().screenLayout & 15;
return i != 1 ? i != 2 ? i != 3 ? i > 3 ? a.XLARGE : a.UNKNOWN : a.LARGE : a.NORMAL : a.SMALL;
}
@SuppressLint({"HardwareIds", "MissingPermission"})
public static String b(Context context) {
StringBuilder sb;
if (TextUtils.isEmpty(b)) {
b = c(context);
try {
try {
if (TextUtils.isEmpty(b) || "000000000000000".equals(b)) {
b = d(context);
}
} catch (Exception e) {
a.a("Caught error while getPersistentUUID: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
if (TextUtils.isEmpty(b)) {
sb = new StringBuilder();
}
}
if (TextUtils.isEmpty(b)) {
sb = new StringBuilder();
sb.append("TS");
sb.append(System.currentTimeMillis());
b = sb.toString();
}
} catch (Throwable th) {
if (TextUtils.isEmpty(b)) {
b = "TS" + System.currentTimeMillis();
}
throw th;
}
}
return b;
}
@SuppressLint({"HardwareIds", "MissingPermission"})
private static String c(Context context) {
try {
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService("phone");
if (telephonyManager != null) {
b = telephonyManager.getDeviceId();
}
} catch (SecurityException unused) {
a.a("Neither user nor current process has android.permission.READ_PHONE_STATE.");
} catch (Exception e) {
a.a("Caught error while getDeviceId: ", e);
com.baidu.uaq.agent.android.harvest.health.a.a(e);
}
return b;
}
public static String d(Context context) {
c = new File(context.getFilesDir(), "uaq_installation");
String a2 = a();
if (!TextUtils.isEmpty(a2)) {
b("UUIDRecovered");
return a2;
}
String uuid = UUID.randomUUID().toString();
a.d("Created random UUID: " + uuid);
com.baidu.uaq.agent.android.stats.a.b().a("Mobile/App/Install");
a(uuid);
return uuid;
}
/* JADX WARN: Removed duplicated region for block: B:20:0x0057 A[EXC_TOP_SPLITTER, SYNTHETIC] */
/* JADX WARN: Removed duplicated region for block: B:31:0x006c A[EXC_TOP_SPLITTER, SYNTHETIC] */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct code enable 'Show inconsistent code' option in preferences
*/
private static java.lang.String a() {
/*
java.io.File r0 = com.baidu.uaq.agent.android.util.d.c
boolean r0 = r0.exists()
if (r0 == 0) goto L7e
r0 = 0
java.io.BufferedReader r1 = new java.io.BufferedReader // Catch: java.lang.Throwable -> L3c java.lang.NullPointerException -> L41 org.json.JSONException -> L43 java.io.IOException -> L45
java.io.FileReader r2 = new java.io.FileReader // Catch: java.lang.Throwable -> L3c java.lang.NullPointerException -> L41 org.json.JSONException -> L43 java.io.IOException -> L45
java.io.File r3 = com.baidu.uaq.agent.android.util.d.c // Catch: java.lang.Throwable -> L3c java.lang.NullPointerException -> L41 org.json.JSONException -> L43 java.io.IOException -> L45
r2.<init>(r3) // Catch: java.lang.Throwable -> L3c java.lang.NullPointerException -> L41 org.json.JSONException -> L43 java.io.IOException -> L45
r1.<init>(r2) // Catch: java.lang.Throwable -> L3c java.lang.NullPointerException -> L41 org.json.JSONException -> L43 java.io.IOException -> L45
java.lang.String r0 = r1.readLine() // Catch: java.lang.NullPointerException -> L36 org.json.JSONException -> L38 java.io.IOException -> L3a java.lang.Throwable -> L69
org.json.JSONObject r2 = new org.json.JSONObject // Catch: java.lang.NullPointerException -> L36 org.json.JSONException -> L38 java.io.IOException -> L3a java.lang.Throwable -> L69
r2.<init>(r0) // Catch: java.lang.NullPointerException -> L36 org.json.JSONException -> L38 java.io.IOException -> L3a java.lang.Throwable -> L69
java.lang.String r0 = "uaq_uuid"
java.lang.String r0 = r2.getString(r0) // Catch: java.lang.NullPointerException -> L36 org.json.JSONException -> L38 java.io.IOException -> L3a java.lang.Throwable -> L69
r1.close() // Catch: java.io.IOException -> L28
goto L80
L28:
r1 = move-exception
com.baidu.uaq.agent.android.logging.a r2 = com.baidu.uaq.agent.android.util.d.a
java.lang.String r3 = r1.getMessage()
r2.a(r3)
com.baidu.uaq.agent.android.harvest.health.a.a(r1)
goto L80
L36:
r0 = move-exception
goto L49
L38:
r0 = move-exception
goto L49
L3a:
r0 = move-exception
goto L49
L3c:
r1 = move-exception
r4 = r1
r1 = r0
r0 = r4
goto L6a
L41:
r1 = move-exception
goto L46
L43:
r1 = move-exception
goto L46
L45:
r1 = move-exception
L46:
r4 = r1
r1 = r0
r0 = r4
L49:
com.baidu.uaq.agent.android.logging.a r2 = com.baidu.uaq.agent.android.util.d.a // Catch: java.lang.Throwable -> L69
java.lang.String r3 = r0.getMessage() // Catch: java.lang.Throwable -> L69
r2.a(r3) // Catch: java.lang.Throwable -> L69
com.baidu.uaq.agent.android.harvest.health.a.a(r0) // Catch: java.lang.Throwable -> L69
if (r1 == 0) goto L7e
r1.close() // Catch: java.io.IOException -> L5b
goto L7e
L5b:
r0 = move-exception
com.baidu.uaq.agent.android.logging.a r1 = com.baidu.uaq.agent.android.util.d.a
java.lang.String r2 = r0.getMessage()
r1.a(r2)
com.baidu.uaq.agent.android.harvest.health.a.a(r0)
goto L7e
L69:
r0 = move-exception
L6a:
if (r1 == 0) goto L7d
r1.close() // Catch: java.io.IOException -> L70
goto L7d
L70:
r1 = move-exception
com.baidu.uaq.agent.android.logging.a r2 = com.baidu.uaq.agent.android.util.d.a
java.lang.String r3 = r1.getMessage()
r2.a(r3)
com.baidu.uaq.agent.android.harvest.health.a.a(r1)
L7d:
throw r0
L7e:
java.lang.String r0 = ""
L80:
return r0
*/
throw new UnsupportedOperationException("Method not decompiled: com.baidu.uaq.agent.android.util.d.a():java.lang.String");
}
private static void b(String str) {
com.baidu.uaq.agent.android.stats.a b2 = com.baidu.uaq.agent.android.stats.a.b();
if (b2 != null) {
b2.a("Supportability/AgentHealth/" + str);
return;
}
a.a("StatsEngine is null. " + str + " not recorded.");
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARN: Removed duplicated region for block: B:20:0x0044 A[Catch: IOException -> 0x0048, TRY_ENTER, TRY_LEAVE, TryCatch #2 {IOException -> 0x0048, blocks: (B:8:0x0021, B:20:0x0044), top: B:2:0x0001 }] */
/* JADX WARN: Type inference failed for: r0v0 */
/* JADX WARN: Type inference failed for: r0v16 */
/* JADX WARN: Type inference failed for: r0v17 */
/* JADX WARN: Type inference failed for: r0v18 */
/* JADX WARN: Type inference failed for: r0v19 */
/* JADX WARN: Type inference failed for: r0v2 */
/* JADX WARN: Type inference failed for: r0v3, types: [java.io.BufferedWriter] */
/* JADX WARN: Type inference failed for: r0v5 */
/* JADX WARN: Type inference failed for: r0v8 */
/* JADX WARN: Unsupported multi-entry loop pattern (BACK_EDGE: B:35:0x0049 -> B:9:0x0055). Please report as a decompilation issue!!! */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct code enable 'Show inconsistent code' option in preferences
*/
private static void a(java.lang.String r5) {
/*
r0 = 0
org.json.JSONObject r1 = new org.json.JSONObject // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
r1.<init>() // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
java.lang.String r2 = "uaq_uuid"
r1.put(r2, r5) // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
java.io.BufferedWriter r5 = new java.io.BufferedWriter // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
java.io.FileWriter r2 = new java.io.FileWriter // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
java.io.File r3 = com.baidu.uaq.agent.android.util.d.c // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
r2.<init>(r3) // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
r5.<init>(r2) // Catch: java.lang.Throwable -> L31 org.json.JSONException -> L33 java.io.IOException -> L35
java.lang.String r0 = r1.toString() // Catch: java.lang.Throwable -> L25 org.json.JSONException -> L2a java.io.IOException -> L2c
r5.write(r0) // Catch: java.lang.Throwable -> L25 org.json.JSONException -> L2a java.io.IOException -> L2c
r5.flush() // Catch: java.lang.Throwable -> L25 org.json.JSONException -> L2a java.io.IOException -> L2c
r5.close() // Catch: java.io.IOException -> L48
goto L55
L25:
r0 = move-exception
r4 = r0
r0 = r5
r5 = r4
goto L56
L2a:
r0 = move-exception
goto L2d
L2c:
r0 = move-exception
L2d:
r4 = r0
r0 = r5
r5 = r4
goto L36
L31:
r5 = move-exception
goto L56
L33:
r5 = move-exception
goto L36
L35:
r5 = move-exception
L36:
com.baidu.uaq.agent.android.logging.a r1 = com.baidu.uaq.agent.android.util.d.a // Catch: java.lang.Throwable -> L31
java.lang.String r2 = r5.getMessage() // Catch: java.lang.Throwable -> L31
r1.a(r2) // Catch: java.lang.Throwable -> L31
com.baidu.uaq.agent.android.harvest.health.a.a(r5) // Catch: java.lang.Throwable -> L31
if (r0 == 0) goto L55
r0.close() // Catch: java.io.IOException -> L48
goto L55
L48:
r5 = move-exception
com.baidu.uaq.agent.android.logging.a r0 = com.baidu.uaq.agent.android.util.d.a
java.lang.String r1 = r5.getMessage()
r0.a(r1)
com.baidu.uaq.agent.android.harvest.health.a.a(r5)
L55:
return
L56:
if (r0 == 0) goto L69
r0.close() // Catch: java.io.IOException -> L5c
goto L69
L5c:
r0 = move-exception
com.baidu.uaq.agent.android.logging.a r1 = com.baidu.uaq.agent.android.util.d.a
java.lang.String r2 = r0.getMessage()
r1.a(r2)
com.baidu.uaq.agent.android.harvest.health.a.a(r0)
L69:
throw r5
*/
throw new UnsupportedOperationException("Method not decompiled: com.baidu.uaq.agent.android.util.d.a(java.lang.String):void");
}
}

View File

@@ -0,0 +1,70 @@
package com.baidu.uaq.agent.android.util;
import com.baidu.uaq.agent.android.logging.a;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import javax.crypto.BadPaddingException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.SecretKeySpec;
/* compiled from: EncryptUtil.java */
/* loaded from: classes.dex */
public class e {
static final /* synthetic */ boolean b = !e.class.desiredAssertionStatus();
private static final a a = com.baidu.uaq.agent.android.logging.b.a();
public static String a(String str) throws NoSuchAlgorithmException, IllegalBlockSizeException, InvalidKeyException, BadPaddingException, NoSuchPaddingException {
if (str != null) {
return a(a(b("587a0fb0c91ae061e66adbf2ec56f0b8"), str.getBytes()));
}
a.b("AES warning: content is null");
return "";
}
private static byte[] b(String str) {
int length = str.length() / 2;
byte[] bArr = new byte[length];
for (int i = 0; i < length; i++) {
int i2 = i * 2;
bArr[i] = Integer.valueOf(str.substring(i2, i2 + 2), 16).byteValue();
}
return bArr;
}
private static byte[] a(byte[] bArr, byte[] bArr2) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidKeyException, BadPaddingException, IllegalBlockSizeException {
Cipher a2 = a(1, bArr);
if (b || a2 != null) {
return a2.doFinal(bArr2);
}
throw new AssertionError();
}
private static Cipher a(int i, byte[] bArr) {
try {
Cipher cipher = Cipher.getInstance("AES");
cipher.init(i, new SecretKeySpec(bArr, "AES"));
return cipher;
} catch (InvalidKeyException | NoSuchAlgorithmException | NoSuchPaddingException e) {
e.printStackTrace();
return null;
}
}
private static String a(byte[] bArr) {
if (bArr == null) {
return "";
}
StringBuffer stringBuffer = new StringBuffer(bArr.length * 2);
for (byte b2 : bArr) {
a(stringBuffer, b2);
}
return stringBuffer.toString();
}
private static void a(StringBuffer stringBuffer, byte b2) {
stringBuffer.append("0123456789ABCDEF".charAt((b2 >> 4) & 15));
stringBuffer.append("0123456789ABCDEF".charAt(b2 & 15));
}
}

View File

@@ -0,0 +1,339 @@
package com.baidu.uaq.agent.android.util;
import android.content.Context;
import com.baidu.uaq.agent.android.customtransmission.APMUploadConfigure;
import com.baidu.uaq.agent.android.logging.a;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
/* compiled from: MultiLogPersistentUtil.java */
/* loaded from: classes.dex */
public class f {
private static final a d = com.baidu.uaq.agent.android.logging.b.a();
private static String e = null;
private final String a;
private final ArrayList<String> b = new ArrayList<>();
private Context c;
public f(Context context, String str) {
this.c = context;
this.a = str;
c();
}
private void a(String str, String str2, File file) {
if (str.equals(APMUploadConfigure.APMUPLOADNAME)) {
b(str2, file);
} else {
a(str2, file);
}
}
private void b(String str, File file) {
try {
FileOutputStream fileOutputStream = new FileOutputStream(file, true);
fileOutputStream.write(str.getBytes());
fileOutputStream.write(",".getBytes());
fileOutputStream.flush();
fileOutputStream.close();
} catch (IOException e2) {
e2.printStackTrace();
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
}
private boolean e(String str) {
String b = b();
try {
File file = new File(b);
if (!file.exists()) {
file.mkdirs();
}
File file2 = new File(b + str + "_ini");
if (file2.exists()) {
return true;
}
file2.createNewFile();
if (this.b.contains(file2.getAbsolutePath())) {
return true;
}
this.b.add(file2.getAbsolutePath());
return true;
} catch (IOException e2) {
e2.printStackTrace();
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
return false;
}
}
public ArrayList<String> c(String str) {
FileInputStream fileInputStream;
ArrayList<String> arrayList = new ArrayList<>();
FileInputStream fileInputStream2 = null;
try {
try {
fileInputStream = new FileInputStream(str);
try {
int available = fileInputStream.available();
if (available > 0) {
int i = 0;
while (i < available) {
DataInputStream dataInputStream = new DataInputStream(fileInputStream);
long readLong = dataInputStream.readLong();
int i2 = (int) readLong;
char[] cArr = new char[i2];
for (int i3 = 0; i3 < readLong; i3++) {
cArr[i3] = dataInputStream.readChar();
}
arrayList.add(new String(cArr, 0, i2));
i = (int) (i + 8 + readLong);
}
}
try {
fileInputStream.close();
} catch (IOException e2) {
e2.printStackTrace();
}
return arrayList;
} catch (EOFException unused) {
fileInputStream2 = fileInputStream;
d.d("read end");
if (fileInputStream2 != null) {
try {
fileInputStream2.close();
} catch (IOException e3) {
e3.printStackTrace();
}
}
return arrayList;
} catch (IOException unused2) {
fileInputStream2 = fileInputStream;
d.d("read end");
if (fileInputStream2 != null) {
try {
fileInputStream2.close();
} catch (IOException e4) {
e4.printStackTrace();
}
}
return arrayList;
} catch (Throwable th) {
th = th;
if (fileInputStream != null) {
try {
fileInputStream.close();
} catch (IOException e5) {
e5.printStackTrace();
}
}
throw th;
}
} catch (EOFException unused3) {
} catch (IOException unused4) {
}
} catch (Throwable th2) {
th = th2;
fileInputStream = null;
}
}
public File d(String str) {
File file = new File(b() + str + "_ini");
if (file.exists() || e(str)) {
return file;
}
return null;
}
public void a(String str, String str2) {
File d2 = d(str);
if (d2 == null) {
return;
}
if (d2.length() + str2.length() <= 10240) {
a(str, str2, d2);
return;
}
if (this.b.size() < 10) {
a(d2, str2);
return;
}
Collections.sort(this.b);
String remove = this.b.remove(0);
d.d("expire with file: " + remove);
File file = new File(remove);
if (file.exists()) {
file.delete();
}
a(d2, str2);
}
/* JADX WARN: Removed duplicated region for block: B:41:0x0072 A[EXC_TOP_SPLITTER, SYNTHETIC] */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct code enable 'Show inconsistent code' option in preferences
*/
public java.lang.String b(java.lang.String r7) {
/*
r6 = this;
r0 = 0
java.io.File r1 = new java.io.File // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
r1.<init>(r7) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
boolean r2 = r1.exists() // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
if (r2 != 0) goto L2b
java.lang.String r1 = r6.a // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
boolean r1 = r7.contains(r1) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
if (r1 != 0) goto L2a
com.baidu.uaq.agent.android.logging.a r1 = com.baidu.uaq.agent.android.util.f.d // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
java.lang.StringBuilder r2 = new java.lang.StringBuilder // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
r2.<init>() // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
java.lang.String r3 = "log file not exists: "
r2.append(r3) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
r2.append(r7) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
java.lang.String r7 = r2.toString() // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
r1.a(r7) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
L2a:
return r0
L2b:
java.io.FileReader r7 = new java.io.FileReader // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
r7.<init>(r1) // Catch: java.lang.Throwable -> L5c java.io.IOException -> L5e
java.lang.StringBuilder r1 = new java.lang.StringBuilder // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
r1.<init>() // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
r2 = 1024(0x400, float:1.435E-42)
char[] r2 = new char[r2] // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
L39:
int r3 = r7.read(r2) // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
r4 = -1
if (r3 == r4) goto L45
r4 = 0
r1.append(r2, r4, r3) // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
goto L39
L45:
java.lang.String r0 = r1.toString() // Catch: java.lang.Throwable -> L52 java.io.IOException -> L57
r7.close() // Catch: java.io.IOException -> L4d
goto L51
L4d:
r7 = move-exception
r7.printStackTrace()
L51:
return r0
L52:
r0 = move-exception
r5 = r0
r0 = r7
r7 = r5
goto L70
L57:
r1 = move-exception
r5 = r1
r1 = r7
r7 = r5
goto L60
L5c:
r7 = move-exception
goto L70
L5e:
r7 = move-exception
r1 = r0
L60:
r7.printStackTrace() // Catch: java.lang.Throwable -> L6e
if (r1 == 0) goto L6d
r1.close() // Catch: java.io.IOException -> L69
goto L6d
L69:
r7 = move-exception
r7.printStackTrace()
L6d:
return r0
L6e:
r7 = move-exception
r0 = r1
L70:
if (r0 == 0) goto L7a
r0.close() // Catch: java.io.IOException -> L76
goto L7a
L76:
r0 = move-exception
r0.printStackTrace()
L7a:
throw r7
*/
throw new UnsupportedOperationException("Method not decompiled: com.baidu.uaq.agent.android.util.f.b(java.lang.String):java.lang.String");
}
private void a(File file, String str) {
String absolutePath = file.getAbsolutePath();
int lastIndexOf = absolutePath.lastIndexOf(File.separator) + 1;
if (lastIndexOf >= 0 && lastIndexOf <= absolutePath.length()) {
String str2 = absolutePath.substring(0, lastIndexOf) + this.a + "_" + System.currentTimeMillis();
file.renameTo(new File(str2));
this.b.add(str2);
a(this.a, str, file);
return;
}
d.b("in toPersistentFile, StringIndexOutOfBoundsException happened!");
}
private void c() {
if (!this.b.isEmpty()) {
this.b.clear();
}
File file = new File(b());
e(this.a);
String[] list = file.list();
if (list == null || list.length == 0) {
return;
}
for (String str : list) {
if (!this.b.contains(b() + str) && str.contains(this.a)) {
this.b.add(b() + str);
}
}
Collections.reverse(this.b);
}
private void a(String str, File file) {
try {
FileOutputStream fileOutputStream = new FileOutputStream(file, true);
DataOutputStream dataOutputStream = new DataOutputStream(fileOutputStream);
d.d("writeToDefaultCustomFile log size:" + str.length());
dataOutputStream.writeLong((long) str.length());
dataOutputStream.writeChars(str);
dataOutputStream.flush();
dataOutputStream.close();
fileOutputStream.flush();
fileOutputStream.close();
} catch (IOException e2) {
e2.printStackTrace();
com.baidu.uaq.agent.android.harvest.health.a.a(e2);
}
}
private String b() {
if (e == null) {
e = this.c.getFilesDir().getAbsolutePath() + "/apm/";
}
return e;
}
public boolean a(String str) {
File file = new File(str);
this.b.remove(str);
if (file.exists()) {
return file.delete();
}
return true;
}
public ArrayList<String> a() {
Collections.sort(this.b);
return this.b;
}
}

View File

@@ -0,0 +1,30 @@
package com.baidu.uaq.agent.android.util;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.atomic.AtomicInteger;
/* compiled from: NamedThreadFactory.java */
/* loaded from: classes.dex */
public class g implements ThreadFactory {
private final ThreadGroup a;
private final String b;
private final AtomicInteger c = new AtomicInteger(1);
public g(String str) {
SecurityManager securityManager = System.getSecurityManager();
this.a = securityManager == null ? Thread.currentThread().getThreadGroup() : securityManager.getThreadGroup();
this.b = "APM_" + str + "-";
}
@Override // java.util.concurrent.ThreadFactory
public Thread newThread(Runnable runnable) {
Thread thread = new Thread(this.a, runnable, this.b + this.c.getAndIncrement(), 0L);
if (thread.isDaemon()) {
thread.setDaemon(false);
}
if (thread.getPriority() != 5) {
thread.setPriority(5);
}
return thread;
}
}

View File

@@ -0,0 +1,51 @@
package com.baidu.uaq.agent.android.util;
import com.baidu.cloud.media.player.IMediaPlayer;
import com.baidu.uaq.agent.android.UAQ;
import java.io.FileNotFoundException;
import java.net.ConnectException;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.SocketException;
import java.net.SocketTimeoutException;
import java.net.UnknownHostException;
import javax.net.ssl.SSLException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.conn.ConnectTimeoutException;
/* compiled from: NetworkErrorUtil.java */
/* loaded from: classes.dex */
public class h {
static {
com.baidu.uaq.agent.android.logging.b.a();
UAQ.getInstance();
}
public static int a(Exception exc) {
if (exc instanceof ClientProtocolException) {
return -1011;
}
if (exc instanceof UnknownHostException) {
return -1006;
}
if ((exc instanceof SocketTimeoutException) || (exc instanceof ConnectTimeoutException)) {
return -1001;
}
if (exc instanceof ConnectException) {
return IMediaPlayer.MEDIA_ERROR_IO;
}
if (exc instanceof MalformedURLException) {
return IMediaPlayer.MEDIA_ERROR_AUTH_FAILURE;
}
if (exc instanceof SocketException) {
return -2001;
}
if (exc instanceof ProtocolException) {
return -3001;
}
if (exc instanceof FileNotFoundException) {
return -4001;
}
return !(exc instanceof SSLException) ? -1 : -1200;
}
}

View File

@@ -0,0 +1,142 @@
package com.baidu.uaq.agent.android.util;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
import android.telephony.TelephonyManager;
import com.baidu.uaq.agent.android.logging.a;
import com.ubt.jimu.blockly.feature.sensor.SensorObserver;
import com.ubt.jimu.diy.model.CategoryModel;
import com.ubt.jimu.transport.model.TransportFile;
import java.text.MessageFormat;
/* compiled from: NetworkUtil.java */
/* loaded from: classes.dex */
public final class i {
private static final a a = com.baidu.uaq.agent.android.logging.b.a();
private static String a(int i) {
switch (i) {
case 1:
return "GPRS";
case 2:
return "EDGE";
case 3:
return "UMTS";
case 4:
return "CDMA";
case 5:
return "EVDO rev 0";
case 6:
return "EVDO rev A";
case 7:
return "1xRTT";
case 8:
return "HSDPA";
case 9:
return "HSUPA";
case 10:
return "HSPA";
case 11:
return "IDEN";
case 12:
return "EVDO rev B";
case 13:
return SensorObserver.Compareration.OP_LESS_THAN;
case 14:
return "HRPD";
case 15:
return "HSPAP";
default:
return CategoryModel.unknown;
}
}
public static String a(Context context) {
NetworkInfo e;
try {
e = e(context);
} catch (SecurityException unused) {
}
if (e == null || !a(e)) {
return TransportFile.TYPE_NONE;
}
if (b(e)) {
return f(context);
}
if (c(e)) {
return "wifi";
}
a.b(MessageFormat.format("Unknown network type: {0} [{1}]", e.getTypeName(), Integer.valueOf(e.getType())));
return CategoryModel.unknown;
}
public static String b(Context context) {
NetworkInfo e;
try {
e = e(context);
} catch (SecurityException unused) {
}
if (e == null || !a(e)) {
return TransportFile.TYPE_NONE;
}
if (c(e)) {
return "wifi";
}
if (b(e)) {
return a(e.getSubtype());
}
return CategoryModel.unknown;
}
public static boolean c(Context context) {
try {
NetworkInfo e = e(context);
return a(e) && e.getType() != 1;
} catch (SecurityException unused) {
return false;
}
}
public static boolean d(Context context) {
try {
NetworkInfo e = e(context);
return e != null && e.getType() == 1;
} catch (SecurityException unused) {
return false;
}
}
public static NetworkInfo e(Context context) throws SecurityException {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService("connectivity");
if (connectivityManager == null) {
return null;
}
try {
return connectivityManager.getActiveNetworkInfo();
} catch (SecurityException e) {
a.b("Cannot determine network state. Enable android.permission.ACCESS_NETWORK_STATE in your manifest.");
throw e;
}
}
private static String f(Context context) {
String networkOperatorName = ((TelephonyManager) context.getSystemService("phone")).getNetworkOperatorName();
return (networkOperatorName.equals("Android") && (Build.PRODUCT.equals("google_sdk") || Build.PRODUCT.equals("sdk") || Build.PRODUCT.equals("sdk_x86") || Build.FINGERPRINT.startsWith("generic"))) ? "wifi" : networkOperatorName;
}
private static boolean c(NetworkInfo networkInfo) {
int type = networkInfo.getType();
return type == 1 || type == 9 || type == 6 || type == 7;
}
private static boolean b(NetworkInfo networkInfo) {
int type = networkInfo.getType();
return type == 0 || type == 2 || type == 3 || type == 4 || type == 5;
}
public static boolean a(NetworkInfo networkInfo) {
return networkInfo != null && networkInfo.isConnected();
}
}

View File

@@ -0,0 +1,32 @@
package com.baidu.uaq.agent.android.util;
import com.baidu.uaq.agent.android.logging.a;
import java.util.Random;
/* compiled from: Util.java */
/* loaded from: classes.dex */
public class l {
private static final Random a = new Random();
private static final a b = com.baidu.uaq.agent.android.logging.b.a();
public static void a(String str) {
int length = str.length();
int i = 2000;
int i2 = 0;
int i3 = 0;
while (i2 < 100) {
if (length <= i) {
b.d(str.substring(i3, length));
return;
}
b.d(str.substring(i3, i));
i2++;
i3 = i;
i += 2000;
}
}
public static Random a() {
return a;
}
}