53 lines
1.6 KiB
Java
Raw Normal View History

2016-09-21 16:55:20 -05:00
package com.topjohnwu.magisk.utils;
2016-09-21 23:36:28 -05:00
import android.app.Application;
import android.content.Context;
import android.preference.PreferenceManager;
2016-09-21 16:55:20 -05:00
import android.util.Log;
public class Logger {
2016-09-28 00:33:01 +08:00
private static final String LOG_TAG = "Magisk: DEV";
2016-09-21 16:55:20 -05:00
2016-09-30 10:41:40 +08:00
private static final boolean logShell = true;
2016-09-28 00:33:01 +08:00
public static void dev(String msg, Object... args) {
2016-09-21 23:36:28 -05:00
Context context = null;
try {
context = getApplicationUsingReflection();
} catch (Exception e) {
e.printStackTrace();
}
if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean("developer_logging", false)) {
2016-09-21 16:55:20 -05:00
if (args.length == 1 && args[0] instanceof Throwable) {
Log.d(LOG_TAG, msg, (Throwable) args[0]);
} else {
Log.d(LOG_TAG, String.format(msg, args));
}
}
}
2016-09-21 23:36:28 -05:00
2016-09-28 00:33:01 +08:00
public static void dev(String msg) {
Context context = null;
try {
context = getApplicationUsingReflection();
} catch (Exception e) {
e.printStackTrace();
}
if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean("developer_logging", false)) {
Log.d(LOG_TAG, msg);
}
}
2016-09-30 10:41:40 +08:00
public static void shell(boolean root, String msg) {
if (logShell) {
Log.d(root ? "SU" : "SH", msg);
}
}
2016-09-21 23:36:28 -05:00
private static Application getApplicationUsingReflection() throws Exception {
return (Application) Class.forName("android.app.AppGlobals")
.getMethod("getInitialApplication").invoke(null, (Object[]) null);
}
2016-09-21 16:55:20 -05:00
}