- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
111 lines
3.2 KiB
Java
111 lines
3.2 KiB
Java
package com.glu.plugins.gluanalytics.util;
|
|
|
|
import android.text.TextUtils;
|
|
import java.util.logging.Level;
|
|
import java.util.logging.Logger;
|
|
import org.json.JSONException;
|
|
import org.json.JSONStringer;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class YLogger {
|
|
private final Logger mLog;
|
|
|
|
private YLogger(Logger logger) {
|
|
this.mLog = logger;
|
|
}
|
|
|
|
public static YLogger create(String str) {
|
|
return new YLogger(Logger.getLogger(str));
|
|
}
|
|
|
|
public static YLogger create(Class<?> cls) {
|
|
return create(cls.getName());
|
|
}
|
|
|
|
public void v(String str, Object... objArr) {
|
|
doLog(Level.FINEST, str, objArr);
|
|
}
|
|
|
|
public void i(String str, Object... objArr) {
|
|
doLog(Level.INFO, str, objArr);
|
|
}
|
|
|
|
public void e(String str, Object... objArr) {
|
|
doLog(Level.SEVERE, str, objArr);
|
|
}
|
|
|
|
public boolean canV() {
|
|
return this.mLog.isLoggable(Level.FINEST);
|
|
}
|
|
|
|
private static String format(String str, Object... objArr) {
|
|
try {
|
|
JSONStringer object = new JSONStringer().array().value(str).object();
|
|
appendPlistToJson(object, objArr);
|
|
Object[] plistTail = plistTail(objArr);
|
|
if (plistTail != null) {
|
|
appendPlistToJson(object, plistTail);
|
|
}
|
|
object.endObject().endArray();
|
|
return "#evu" + object.toString();
|
|
} catch (JSONException e) {
|
|
throw Common.propagate(e);
|
|
}
|
|
}
|
|
|
|
private static Throwable findThrowable(Object... objArr) {
|
|
Throwable findThrowableNoTail = findThrowableNoTail(objArr);
|
|
if (findThrowableNoTail != null) {
|
|
return findThrowableNoTail;
|
|
}
|
|
Object[] plistTail = plistTail(objArr);
|
|
if (plistTail != null) {
|
|
return findThrowableNoTail(plistTail);
|
|
}
|
|
return null;
|
|
}
|
|
|
|
private static Throwable findThrowableNoTail(Object... objArr) {
|
|
int length = objArr.length - (objArr.length % 2);
|
|
for (int i = 0; i < length; i += 2) {
|
|
if (TextUtils.equals((String) objArr[i], "e")) {
|
|
Object obj = objArr[i + 1];
|
|
if (obj instanceof Throwable) {
|
|
return (Throwable) obj;
|
|
}
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
private static Object[] plistTail(Object[] objArr) {
|
|
int length = objArr.length;
|
|
int i = length - (length % 2);
|
|
if (i < length) {
|
|
Object obj = objArr[i];
|
|
if (obj instanceof Object[]) {
|
|
return (Object[]) obj;
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
private static void appendPlistToJson(JSONStringer jSONStringer, Object[] objArr) throws JSONException {
|
|
int length = objArr.length;
|
|
int i = length - (length % 2);
|
|
for (int i2 = 0; i2 < i; i2 += 2) {
|
|
Object obj = objArr[i2];
|
|
Object obj2 = objArr[i2 + 1];
|
|
if ((obj instanceof String) && obj2 != null) {
|
|
jSONStringer.key((String) obj).value(obj2);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void doLog(Level level, String str, Object[] objArr) {
|
|
if (this.mLog.isLoggable(level)) {
|
|
this.mLog.log(level, format(str, objArr), findThrowable(objArr));
|
|
}
|
|
}
|
|
}
|