Android как удалить логирование?

Log.* - не имеет смысла в релизной версии, лишь слегка нагружает систему. Чтобы избавиться от логов, видел такую проверку: if (BuildConfig.DEBUG) {} . Может мой вопрос и глупый, но есть ли способ автоматически удалить вызов всех логов в проекте?(ведь делать проверку тоже занимает какое-то время, пусть и наносекунды)
  • Вопрос задан
  • 541 просмотр
Решения вопроса 1
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Используйте proguard/r8.
В файле proguard-rules.pro пропишите следующее:
-assumenosideeffects class android.util.Log {
    public static boolean isLoggable(java.lang.String, int);
    public static int println(...);
    public static int v(...);
    public static int i(...);
    public static int w(...);
    public static int d(...);
    public static int e(...);
    public static int wtf(...);
}


Подробности тут в разделе Removing logging code
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@IdeSade
if (BuildConfig.DEBUG) {} компилятор сам уберет этот код, проверки никакой не будет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы