Важной целью является не поставлять производственное приложение с тонной журнальных вызовов, что увеличивает его размер и даже, возможно, даже влияет на его производительность.
Для этого я рекомендую помещать эти константы в верхнюю часть каждого класса, для которого будут выполняться вызовы журнала:
static final boolean DEBUG = false;
static final String TAG = "<MyClass>"
Теперь, когда вы входите, сделайте это:
if (DEBUG) Log.v(TAG, "Something");
Включите ваши журналы, изменив константу DEBUG
на true. (Если вы хотите, вы можете иметь один класс с этими статиками для всего кода вашего приложения, который будет использоваться ... Это имеет смысл для небольшого приложения, но по мере того, как все становится большим, приятно решить, какие части включить регистрацию.)
Таким образом, когда вы создаете свое приложение с помощью DEBUG = false
, весь код регистрации не только не выполняется, но и полностью удаляется из вашего приложения. Это хорошо, потому что позволяет оставить достаточно обширную регистрацию в вашем коде для включения, когда вам это нужно, не беспокоясь о том, как это повлияет на размер вашего приложения доставки. По сути, просто добавляйте журналы туда, где они вам нужны, и не беспокойтесь о том, чтобы их оставить.
Это подход, который используется во многих платформах Android. Например, Activity ManagerService .
Здесь эти константы находятся сверху, и на их основе разбросаны различные строки журнала. (И множество других констант суб-отладки для различных его аспектов, так как этот файл смехотворно глупо велик.)