개발/AOS

안드로이드 프로가드 proguard란?

728x90

프로가드의 필요성 : 

 

 

1. 코드 난독화를 통해 디컴파일시 본인의 코드가 노출되는 것을 방지 할 수 있습니다.

 

2. 불필요한 메서드를 제거하여 멀티덱스를 피할 수 있습니다

 

 

- 멀티덱스란

 

안드로이드 앱을 구성하는 코드는 컴파일 되어 덱스(dex) 파일로 만들어 집니다. 하나의 덱스(dex) 파일에는 최대 65536개의 메소드만 참조 할 수 있습니다. 만약 프로젝트의 코드가 65536개의 메소드를 초과하게 되면 덱스(dex)파일이 여러개가 생성됩니다.

 

그러면 멀티 덱스를 사용하여 컴파일 할 수 있지만, 빌드 과정에서 앱 내의 파일을 여러개의 덱스파일로 나누어야 하므로 빌드 속도가 느려지고 APK 의 용량이 커지게 됩니다.

 

가능하다면 프로가드를 설정해 주면 좋겠죠?

 

 

취약점 점검을 하면 주로 앱 위 변조(무결성) 검사, 소스코드 난독화 여부, 디바이스 루팅(탈옥) 여부 체크 3가지를 중점적으로 점검합니다.