HiLogcatUtil.java 源代码
package utils;
import android.text.TextUtils;
import android.util.Log;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class HiLogcatUtil {
static final boolean $assertionsDisabled = false;
private static final int D = 3;
private static final int E = 6;
private static final int I = 4;
private static final String LINE_SEPARATOR = System.getProperty("line.separator");
public static boolean LOG_SWITCH = false;
private static final String TAG = "HiLogcat";
public static final String TAG_BLACK_UID = "HiLogcatBlackUID";
private static final String TAG_ERROR = "HiLogcatError";
public static final String TAG_Google = "HiLogcatGoogle";
public static final String TAG_IO = "HiLogcatIOData";
private static final String TAG_JSON = "HiLogcatJson";
public static final String TAG_PUSH = "HiLogcatPush";
public static final String TAG_SESSION = "HiLogcatSession";
private static final int V = 2;
private static final int W = 5;
private HiLogcatUtil() {
throw new UnsupportedOperationException("u can't instantiate me...");
}
private static StackTraceElement getCurrentStackTraceElement() {
return Thread.currentThread().getStackTrace()[4];
}
private static String getContent(StackTraceElement stackTraceElement, String str) {
return String.format("%s:%s.%s:%d", str, stackTraceElement.getClassName(), stackTraceElement.getMethodName(), Integer.valueOf(stackTraceElement.getLineNumber()));
}
public static void v(String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str : strArr) {
sb.append(str);
sb.append(".");
}
Log.v(TAG, getContent(getCurrentStackTraceElement(), TAG) + ">" + sb.toString());
}
}
public static void vTag(String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
Log.v(str, getContent(getCurrentStackTraceElement(), str) + ">" + sb.toString());
}
}
public static void d(String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str : strArr) {
sb.append(str);
sb.append(".");
}
Log.d(TAG, getContent(getCurrentStackTraceElement(), TAG) + ">" + sb.toString());
}
}
public static void dTag(String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
Log.d(str, getContent(getCurrentStackTraceElement(), str) + ">" + sb.toString());
}
}
public static void i(String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str : strArr) {
sb.append(str);
sb.append(".");
}
Log.i(TAG, getContent(getCurrentStackTraceElement(), TAG) + ">" + sb.toString());
}
}
public static void iTag(String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
Log.i(str, getContent(getCurrentStackTraceElement(), str) + ">" + sb.toString());
}
}
public static void w(String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str : strArr) {
sb.append(str);
sb.append(".");
}
Log.w(TAG, getContent(getCurrentStackTraceElement(), TAG) + ">" + sb.toString());
}
}
public static void wTag(String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
Log.w(str, getContent(getCurrentStackTraceElement(), str) + ">" + sb.toString());
}
}
public static void e(String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str : strArr) {
sb.append(str);
sb.append(".");
}
Log.e(TAG_ERROR, getContent(getCurrentStackTraceElement(), TAG_ERROR) + ">" + sb.toString());
}
}
public static void eTag(String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
Log.e(str, getContent(getCurrentStackTraceElement(), str) + ">" + sb.toString());
}
}
private static void log(int i, String str, String... strArr) {
if (LOG_SWITCH) {
StringBuilder sb = new StringBuilder();
for (String str2 : strArr) {
sb.append(str2);
sb.append(".");
}
String sb2 = sb.toString();
if (i == 2) {
Log.v(str, sb2);
return;
}
if (i == 3) {
Log.d(str, sb2);
return;
}
if (i == 4) {
Log.i(str, sb2);
} else if (i == 5) {
Log.w(str, sb2);
} else {
if (i != 6) {
return;
}
Log.e(str, sb2);
}
}
}
private static void printLine(boolean z) {
if (z) {
Log.d(TAG_JSON, "╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════");
} else {
Log.d(TAG_JSON, "╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════");
}
}
public static void json(String str, String str2) {
String str3;
String str4;
if (LOG_SWITCH) {
try {
} catch (JSONException unused) {
str3 = str;
}
if (str.startsWith("{")) {
str3 = new JSONObject(str).toString(4);
} else {
if (str.startsWith("[")) {
str3 = new JSONArray(str).toString(4);
}
str3 = str;
}
if ((str.contains("-->") || str.contains("<--")) && !str.contains("END")) {
printLine(true);
str4 = str2 + LINE_SEPARATOR + str3;
} else {
str4 = LINE_SEPARATOR + str3;
}
for (String str5 : str4.split(LINE_SEPARATOR)) {
if (!TextUtils.isEmpty(str5)) {
Log.d(TAG_JSON, "║ " + str5);
}
}
if ((str.contains("-->") || str.contains("<--")) && str.contains("END")) {
printLine(false);
}
}
}
}