본문 바로가기

Android

[Android] 앱 배포하기02_ 안드로이드 스튜디오 Release build

 

🚀  Release build는 왜 해야 할까 ?

앱을 최종적으로 배포하기 위해 성능 최적화, 보안 강화 등을 보장하는 안정적이고 최적화된 버전을 생성하기 위해 진행을 하는데요,

개발 과정에서 사용하는 디버그 빌드와 달리 릴리즈 빌드는 실제 배포를 목적으로 하며 디버그 빌드와는 여러 차이점이 있습니다

 

 

 

 

 

🚀 Debug Build란 ?

  • 평소에 개발할 때 사용하는 빌드
  • 주로 개발과 테스트를 위해 사용
  • 애플리케이션의 코드와 동작을 디버깅하기 쉽도록 여러 기능이 활성화 되어있음
  • 개발 환경이 갖추어진 상태에서 Debug용으로 제작되어지는 프로그램
  • 실행 파일에 디버깅 정보를 삽입하여 언제든지 디버깅을 할 수 있도록 하여 Debug 서브 폴더에 실행 파일을 만들어줌
  • 디버깅 정보가 들어가 있기 때문에 실행 파일 상태를 확인 가능 (-> 디버깅 정보가 들어가 있기 때문에 파일 용량이 큼)

 

 

 

 

 

🚀 Release Build란?

  • 프로그램을 배포하기 위해 컴파일 하는 모드
  • 최종 사용자에게 제공하기 위해 애플리케이션을 최적화하고, 보안성을 높임
  • 코드 난독화 및 최적화 가능 (ProGuard 또는 R8을 사용하여 코드 난독화)
  • 디버그 로그와 같은 불필요한 로그를 제거
  • 실제 배포를 위해 서명되어야 하므로 서명 키가 필요
  • 디버깅 정보를 포함하지 않음 (-> 파일 크기가 작고 속도도 더 빠름)

 

 

 

 

 

🚀 Debug Build와 Release Build의 가장 큰 차이점?

목적부터 다르지만 가장 큰 차이점은 디버깅 정보를 실행코드 안에 넣느냐 안넣느냐 라고 생각을 하는데요

디버깅 코드로 컴파일을 하게 되면 실행 상태에서 추적할 수 있는 정보가 실행 파일 안에 들어가게 되므로 용량이 커지고, 릴리즈 모드의 경우 디버깅 없이 순수한 소스코드 자체의 기능만 컴파일 되어 실행 파일로 만들어지게 됩니다 !

 

그리고 위의 설명에서 보았듯이 Debug Build는 개발 환경이 갖추어진 상태에서 진행하는 Build이므로 배포 시엔 무조건 Release build로 돌려서 이상이 없음을 확인하고 Release mode로 배포를 진행해야 합니다

 

그럼 이제 직접 Release Build를 해볼까요?

 

 

 

 

 

 

☄️ 안드로이드 스튜디오에서 Release Build를 해보자

 

우선 Release Build를 진행하려면 서명 키가 필요한데요

서명키 만드는 방법은 이전 포스팅을 참고해주세요 !

 

 

 

서명키를 만들었다면 File에서 Project Structure를 찾아 클릭해주세요

 

 

 

 

그리고 Modules의 Signing Configs에서 release를 선택하고 만들어뒀던 서명 키의 Store File 경로, 비밀번호 등을 입력해주면 됩니다

 

 

 

 

 

그리고 확인을 눌려주면 Module 수준의 build.gradle 파일에 signingConfigs가 추가된 모습을 확인하실 수 있습니다

 

 

 

 

 

혹은 그냥 이 코드에 각자의 데이터를 넣어 build.gradle 파일에 직접 입력해주셔도 상관 없습니다 

 

    signingConfigs {
        create("release") {
            storeFile = file("파일 경로")
            storePassword = "store 비밀번호"
            keyAlias = "키 이름"
            keyPassword = "키 비밀번호"
        }
    }

 

 

 

 

그리고 마지막으로 왼쪽 하단에서 Build Variants를 선택해준 후

 

 

 

 

Activity Build Variant를 release로 선택해주고 Run으로 프로그램을 실행해주면 끝입니다

 

 

 

 

 

 

 

🍀 마무리

배포 전엔 잊지 말고 꼭 Release Build를 돌려 앱이 잘 실행되는지 확인해봅시다 !