Android имеет отличный интерфейс для работы с логированием. Встает вопрос об отключении ведения логов или их ограничение. Для управления выдачей отладочной информации стандартный класс Log желательно обернуть с учетом уровней логов.
Отсюда два главных преимуществ: не нужно следить за удалением выводов в лог из релиза и не нужно менять переменные уровней логов.
Изменение уровня логирования на устройстве происходит очень просто: откройте консоль adb и дайте команду:
По мотивам оф. описания класса Log
import android.util.Log;
public class Logout {
public static void d(String tag, String msg) {
if (Log.isLoggable(tag, Log.DEBUG)) {
Log.d(tag, msg);
}
}
public static void d(String tag, String msg, Throwable tr) {
if (Log.isLoggable(tag, Log.DEBUG)) {
Log.d(tag, msg, tr);
}
}
public static void i(String tag, String msg) {
if (Log.isLoggable(tag, Log.INFO)) {
Log.i(tag, msg);
}
}
public static void i(String tag, String msg, Throwable tr) {
if (Log.isLoggable(tag, Log.INFO)) {
Log.i(tag, msg, tr);
}
}
public static void e(String tag, String msg) {
if (Log.isLoggable(tag, Log.ERROR)) {
Log.e(tag, msg);
}
}
public static void e(String tag, String msg, Throwable tr) {
if (Log.isLoggable(tag, Log.ERROR)) {
Log.e(tag, msg, tr);
}
}
public static void v(String tag, String msg) {
if (Log.isLoggable(tag, Log.VERBOSE)) {
Log.v(tag, msg);
}
}
public static void v(String tag, String msg, Throwable tr) {
if (Log.isLoggable(tag, Log.VERBOSE)) {
Log.v(tag, msg, tr);
}
}
public static void w(String tag, String msg) {
if (Log.isLoggable(tag, Log.WARN)) {
Log.w(tag, msg);
}
}
public static void w(String tag, String msg, Throwable tr) {
if (Log.isLoggable(tag, Log.WARN)) {
Log.w(tag, msg, tr);
}
}
}
В самом проекте обращение к классу Log андроида следует заменить на обращение к методам данного класса. Только следует помнить что, tag.length() > 23.Отсюда два главных преимуществ: не нужно следить за удалением выводов в лог из релиза и не нужно менять переменные уровней логов.
Изменение уровня логирования на устройстве происходит очень просто: откройте консоль adb и дайте команду:
setprop log.tag.Этот код совместим c Android API 1 и выше.
По мотивам оф. описания класса Log
Комментариев нет:
Отправить комментарий