본문 바로가기
안드로이드/Android

[Android] Package

by jinwo_o 2024. 8. 1.

배포 파일 형식

APK (Android Application Package)

  • 전통적인 배포 파일 형식으로 컴파일된 코드와 리소스를 묶어서 키로 서명한 것
  • Google Play에서 사용자가 다운로드하는 APK는 100MB 이하여야 한다.
  • 앱을 구성하는 코드와 파일을 저장하기에는 충분하지만, 고화질 그래픽이나 미디어 파일 등을 포함할 경우 용량 문제가 생긴다.
  • 이런 앱을 실행할 때 개발자가 직접 추가 리소스를 호스팅하고 다운로드해야 한다.

AAB (Android App Bundle)

  • 2018년 구글 I/O 에서 발표한 새로운 형식의 앱 배포 파일
  • APK의 용량 문제를 해결하기 위해 Google Play를 비롯한 기타 앱 스토어와 Android Studio, Gradle, Unity 등의 빌드 도구에서 지원하는 Android 용 배포 형식이다.
  • Google Play 에 올리면 사용자 기기에 맞게 최적화된 APK를 대신 만들어 준다.
  • 설치하는 기기에 필요한 파일만 포함하기 때문에 앱의 크기가 줄어든다.
    • Ex) 다국어를 지원하는 앱은 언어별로 리소스를 포함하지만 한국어로 지정된 기기에서 설치한다면 나머지 언어 리소스는 필요 없게 된다.

앱 서명

  • Android 배포 파일을 만들려면 Key 를 만들어 앱에 서명해야 한다.
  • 앱에 서명하는 방법은 2가지가 있다.

 

1. 서명 키를 개발자가 직접 만들어 관리하는 방법

  • 출시용으로 앱을 빌드할 때 개발자가 만든 키로 앱을 서명하고, Google Play에 등록하여 사용자에게 전달한다.

개발자가 서명 키를 직접 관리할 경우 발생할 수 있는 문제점

  • 키를 분실하거나 도용당하는 경우, 개발자가 만든 서명 키 1개로 앱을 관리하기 때문에 키로 서명할 수 없어 업데이트가 불가능해진다.
  • 그래서 새로운 키를 만들어 새로운 앱으로 재등록해야한다.

 

2. Google Play에서 관리하는 방법

  • 위 문제점을 해결하기 위해 Google에서 Play 앱 서명 서비스를 만들었다.
  • 키를 2개로 구분한다.
    • 업로드 키 : 기존의 서명 키로 개발자가 키를 만들어 앱을 서명하지만 Google Play에 앱을 등록할 때만 사용한다.
    • 앱 서명 키 : Google Play가 만드는 키로 업로드된 앱을 다시 자체적으로 만든 키로 서명해서 사용자에 전달한다. 이 키는 Google에거 관리하며 개발자가 직접 제어할 수 없다.

 

안드로이드 앱 배포, APK와 AAB

Android 앱을 배포할 때 사용되는 파일 형식

velog.io

'안드로이드 > Android' 카테고리의 다른 글

[Android] Activity  (0) 2024.08.09
[Android] App Manifest  (0) 2024.08.08
[Android] Gradle  (0) 2024.08.06