APK와 AAB

이윤설·2025년 2월 26일
0

안드로이드 연구소

목록 보기
17/33

APK와 AAB

APK(Android Package)는 완성된 안드로이드 앱 파일이고, AAB(Android App Bundle)는 APK를 만들어주는 재료 패키지다.

APK (Android Package)

맥도날드에서 햄버거를 주문하면, 조리된 상태 그대로 나온다.
주문하는 사람이 어떤 취향이든 상관없이 같은 햄버거를 받는다. 이것이 바로 APK 방식이다.

AAB

반면, 파인다이닝 레스토랑에서는 손님의 취향에 맞춰 코스를 구성하고, 알맞은 재료를 선택해 요리를 완성한다. 즉, 주문한 사람이 누구냐에 따라 음식 구성이 달라지는 것이다. 이 방식이 바로 AAB다.

차이는?

APK는 모든 기기에 동일한 앱 파일을 설치하는 방식이고, AAB는 사용자의 기기 환경에 맞는 APK를 생성해 최적화된 앱을 제공하는 방식이다.

예를 들어, 한국어 기반의 갤럭시 S21과 독일어 기반의 갤럭시 S10이 있다면, 기존 APK 방식에서는 두 기기에 똑같은 앱이 설치된다.
하지만 AAB를 사용하면 한국어 기기에는 불필요한 독일어 리소스를 제외하고, S21에서만 필요한 기능이 있다면 그것만 포함된 APK를 생성해 설치할 수 있다.

즉, 개발자는 완성된 앱을 배포하는 것이 아니라, 앱을 구성하는 요소들을 AAB로 묶어 스토어에 올린다. 이후 스토어에서 사용자 기기에 필요한 요소만 포함한 APK를 만들어 제공하는 방식이다.


2. AAB를 쓰면 뭐가 좋은가?

AAB의 가장 큰 장점은 앱 크기를 줄일 수 있다는 점이다.

맥도날드에서는 메뉴가 정해져 있고, 손님들은 제공되는 그대로 받아야 한다. 만약 빅맥에서 피클을 빼고 싶다면, 어쩔 수 없이 피클이 들어간 상태로 받은 후 직접 빼야 한다.

반면, 파인다이닝 레스토랑에서는 처음부터 손님의 취향에 맞춰 요리를 준비하기 때문에 불필요한 재료가 들어가지 않는다.

AAB 방식도 마찬가지다.
기존 APK 방식에서는 모든 기기에서 필요할 수도, 필요하지 않을 수도 있는 기능과 언어 파일까지 포함해야 했다.

하지만 AAB는 필요한 요소만 선택해 포함할 수 있기 때문에 앱의 용량이 줄어든다.
평균적으로 AAB를 사용하면 앱 크기가 약 15% 감소한다고 한다.

또한, 개발자가 다양한 기기에 맞춘 APK를 각각 만들어 배포할 필요가 없어진다.
여러 기기에 맞춰 APK를 일일이 제작하는 것은 현실적으로 어려운 일인데, AAB 방식에서는 구글 플레이 스토어가 알아서 맞춤형 APK를 생성해 배포해준다.


3. 단점은 없을까?

AAB 방식은 여러 장점이 있지만, 단점도 존재한다. 가장 큰 단점은 보안 문제다.

APK 방식에서는 개발자가 직접 앱을 완성하고, 본인이 서명까지 해서 배포한다. 하지만 AAB 방식에서는 최종적인 APK를 만드는 주체가 구글 플레이 스토어다.

이 방식의 문제는 개발자가 최종적으로 어떤 APK가 배포되는지 100% 통제할 수 없다는 점이다. 구글은 보안과 안정성을 보장한다고 하지만, 만약 구글이 배포 과정에서 실수를 하거나 구글 직원이 악의적인 일을 행한다면, 개발자는 할 수 있는 것이 없다.
그 리스크는 감수해야 한다.


4. 구글은 왜 AAB를 강제할까?

구글은 "사용자에게 최적화된 앱을 제공하고, 개발자들은 더 효율적으로 앱을 관리할 수 있다"는 이유로 AAB 방식을 도입했다. 하지만 사업적인 이유도 무시할 수 없다.

안드로이드 앱은 iOS 앱과 다르게 구글 플레이뿐만 아니라 다양한 스토어에서 다운로드할 수 있다. 삼성의 갤럭시 스토어, 통신사들의 원스토어, 아마존 앱스토어 등이 있으며, 인터넷에서 APK 파일을 직접 다운로드해 설치하는 방법도 존재한다. 이러한 방식이 많아질수록 구글이 인앱 결제 수수료를 가져가기 어려워진다.

AAB 형식을 강제하면 최종적인 APK는 구글 플레이 서버에서 만들어지고 서명되기 때문에, 앱 배포의 주도권이 구글로 집중된다. 즉, 구글은 이를 통해 자사 스토어를 통한 앱 설치를 더욱 강화할 수 있다.


결론

AAB는 2018년에 처음 등장했고, 2021년 8월부터 구글 플레이에서 신규 앱에 대해 강제 적용되고 있다. 기존 APK 방식은 유지할 수 있지만, 새로운 앱은 반드시 AAB로 배포해야 한다.

사용자 입장에서는 앱 크기가 줄어들고 최적화된 파일만 설치할 수 있기 때문에 긍정적인 변화다. 하지만 개발자 입장에서는 배포 과정에서의 통제력이 다소 줄어들었다는 점이 부담으로 작용할 수 있다.

결국, 구글이 AAB 방식의 보안과 안정성을 충분히 보장해주고, 개발자들이 더욱 편리하게 앱을 관리할 수 있도록 지원을 강화한다면, 장기적으로는 AAB가 더 나은 배포 방식으로 자리 잡을 가능성이 크다.


참고)
https://yozm.wishket.com/magazine/detail/912/

profile
화려한 외면이 아닌 단단한 내면

0개의 댓글

관련 채용 정보