Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 시리즈
자 이번 포스팅에서는 Proguard를 사용하여
앱을 난독화 하고, 압축을 통해 크기를 줄이는 방법에 대해서 알아보도록 하겠습니다.
이러한 작업을 통해 우리는 APK의 크기를 줄이고 리버스 엔지니어링으로부터 코드를 보호할 수 있습니다.
Proguard 구성하기
먼저 [android] - [app] - [proguard-rules.pro] 란 파일을 생성해 줍니다.
그 후 아래 코드를 [proguard-rules.pro]에 추가해 줍니다.
## Flutter wrapper
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.** { *; }
-keep class io.flutter.util.** { *; }
-keep class io.flutter.view.** { *; }
-keep class io.flutter.** { *; }
-keep class io.flutter.plugins.** { *; }
-dontwarn io.flutter.embedding.**
이 설정은 Flutter 엔진 라이브러리를 보호합니다.
다른 라이브러리(예. Firebase)를 보호하기 위해서는 추가적으로 규칙을 작성해야합니다.
앱 난독화 및 크기 축소 사용하기
해당 작업을 위해 [android] - [app] - [build.gradle] 파일에 들어가서
buildTypes {
란 코드를 찾아 아래 코드같이 변경해 줍니다.
android {
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
이제 해당 설정을 통해 Flutter 엔진 라이브러리를 난독화 및 압축을 할 수 있게 되었습니다.
만약 Firebase같은 다른 라이브러리를 보호하기 위해서는 추가적인 규칙이 있을 수 있습니다.
마무리
오늘은 Flutter 앱 배포 그 세번째 Proguard를 사용한 난독화 및 압축 작업을 알아보았습니다.
혹시 잘 안되는 부분이 있거나 포스트에 문제가 있다면 댓글을 남겨주시기 바랍니다.
감사합니다.
'프로그래밍 언어 > Flutter' 카테고리의 다른 글
Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 (6) - APK 빌드 및 설치하기 (0) | 2020.05.22 |
---|---|
Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 (5) - App Bundle 빌드하기 (5) | 2020.05.21 |
Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 (4) - 매니페스트 및 빌드 구성 검토하기 (0) | 2020.05.20 |
Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 (2) - 앱 서명하기 (0) | 2020.05.18 |
Flutter로 개발한 앱 플레이스토어(Play Store)에 배포하기 (1) - 런처 아이콘 만들기 (0) | 2020.05.17 |
이 글을 공유하기