Mobile/Android

[Android]안드로이드 스튜디오로 빌드시 log파일 삭제

out of coding 2015. 7. 15. 16:54

날씨가 덥네요.

다들 건강하시고, 사무실에서 나가지 맙시다.


로그 클래스는 다들 다른 클래스를 참조하여서, 보여줄지 안 보여줄지를 판단할 것으로 생각되는데요.

릴리즈 하는 시점에 android.util.Log값을 없앨수 있는 방법이 있습니다.


1. build.gradle에서 릴리즈 빌드할 때 Proguard를 적용하도록 정의하여 줍니다.


buildTypes {

release {

runProguard true

proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.txt'

}

}


2. proguard-rules.txt 파일에 다음을 추가


-assumenosideeffects class android.util.Log {

public static *** d(...);

public static *** v(...);

}


이렇게 하면 d와 v호출이 제거가 됩니다.


3. 주의사항


-assumenosideeffects 옵션은 optimize 단계를 거쳐야 한다고 합니다.

그러므로 progurad-android.txt가 아닌 proguard-android-optimize.txt를 사용하도록 설정하여 줍니다.


proguard-android-optimize 파일은 SDK폴더의 tools/proguard 디렉토리에 위치하고 있습니다.


다들 수고하세요.