ETC/Flutter

[flutter] 앱 난독화 및 압축하기 (apk 추출하기 2 of 3)

dkswnkk 2021. 10. 18. 00:08

아래의 단계를 수행하신 후 진행해주시기 바랍니다.

 

[flutter] 앱 서명하기 (apk 추출하기 1 of 3)

앱 서명하기 1.keystore 만들기 keytool -genkey -v -keystore ~/파일명.jks -keyalg RSA -keysize 2048 -validity 10000 -alias 지정할이름 -storetype JKS ~/ 는 생성될 디렉터리 주소이다. -alisa 는 후에 설정..

dkswnkk.tistory.com

 

앱 난독화 및 압축하기

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 엔진 라이브러리를 보호한다.
  • 다른 라이브러리(ex: Firebase) 를 보호하기 위해서는 추가적으로 규칙을 작성해야 한다.

앱 난독화 및 크기 축소 사용하기

해당 작업을 위해 android - app - build.gradle 파일에 들어가서 buildType 블럭을 아래와 같이 변경해준다.

 buildTypes {
       release {
           signingConfig signingConfigs.release
            // start of 코드난독화 및 사이즈 축소
            minifyEnabled true
            useProguard true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            // end of 코드난독화 및 사이즈 축소

       }
   }