Friday, April 27, 2012

Логирование в Android приложении и подготовка релиза

Логирование классная шутка и весьма полезная особенно на стадии разработки и тестирования. Но рано или поздно наступает время релиза и нам необходимо вычистить код от ненужных артефактов, например, таких как:

Если в проекте пару файлов, то все просто, но что делать если пару сотен или пару тысяч? Для начала заглянем в документацию по Log, которая говорит буквально следующее:

Verbose should never be compiled into an application except during development. Debug logs are compiled in but stripped at runtime. Error, warning and info logs are always kept.

Т.е. в Android релиз попадет логирование уровня Error, Warning и Info. Уже неплохо, но если я хочу убрать и это?

На сцену выходит ProGuard - библиотека по оптимизации java кода. Я не буду расписывать все достоинства, а лишь покажу базовую конфигурацию:

Собственно все. После сборки, методы Log.v(...) и Log.d(...) будут удалены из приложения. Следует добавить, Android проект уже содержит ProGuard конфигурацию, поэтому обычно нет необходимости создавать ее с нуля, нужно лишь добавить соответствующие правила.

No comments:

Post a Comment