안드로이드 minifyEnabled 속성에 대한 메모
Programming 2018. 9. 3. 15:06android {
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
위는 안드로이드 소스의 난독화를 위해 build.gradle에 입력하는 소스코드이다.
minifyEnabled는 소스 난독화의 동작에 관여하는 속성이 아니라, 앱의 패키징 시 사용하지 않는 리소스를 자동으로 제거할지 말지를 결정하는 것이다. 단독으로 사용되지 않으며 shrinkResources속성과 함께 사용되어야 한다.
이 소스에 따라 난독화가 수행되면 디렉토리 구조가 꽤나 복잡하게 나오며, smali확장자를 가진 파일들이 산출물로 생성된다. 그리고 하나의 자바 소스 파일이 여러개의 파일로 분할되어서 나온다. 말그대로 난독화다.
'Programming' 카테고리의 다른 글
스위프트와 코틀린 null 관련하여 (0) | 2018.09.13 |
---|---|
라이브러리, API, SDK, 프레임워크에 대해서 (0) | 2018.09.13 |
스위프트 문법 정리 1 (0) | 2018.08.23 |
하이퍼바이저, Xen, KVM (0) | 2018.05.19 |
OSI 7 계층 정리 (0) | 2018.05.19 |