Android App Bundle로 앱 크기를 27% 줄인 Cornershop
배경
칠레, 멕시코, 페루, 캐나다에서 널리 사용되는 주문형 식료품 배달 앱인 Cornershop은 수십 곳의 슈퍼마켓과 전문 매장의 상품을 60분 이내에 배달해 줍니다. Cornershop은 저장용량이 작은 기기를 많이 사용하는 지역의 사용자에게 주로 서비스를 제공하기 때문에 앱 크기를 작게 유지하는 것이 중요했습니다. 이와 관련해 Cornershop의 Android 담당자인 크리스토페르 오야르수는 이렇게 말했습니다. “크기가 중요합니다. 사용자가 앱을 다운로드하기로 마음먹는 순간부터 사용자의 상황을 고려해야 하며, 앱 크기도 중요한 상황 요소 중 하나입니다. 모바일 데이터로 앱을 다운로드할 때는 앱 크기가 작을수록 좋은 건 당연합니다. 특히 멕시코나 칠레에서는 더욱 중요하죠.”
Android App Bundle의 모듈화 기능도 Cornershop에 있어 매력적인 점이었습니다. “앱을 모듈화하면 개발자와 사용자 모두에게 많은 이점이 있습니다”라고 크리스토페르는 말합니다. 개발자는 번들을 사용하여 앱 크기를 줄일 수 있을 뿐 아니라 크리스토페르의 말에 따르면 '컴파일 시간을 줄이고 프로젝트를 더 효과적으로 구성'할 수 있습니다. 종합적으로 App Bundle이 모든 면에서 도움이 된다고 판단한 Cornershop팀은 전환을 결심했습니다.
진행한 작업
팀에서는 가장 먼저 앱의 카드 리더 기능을 모듈화했습니다. Cornershop은 사용자가 신용카드 데이터를 직접 입력하지 않고 스캔할 수 있는 옵션을 제공하는데, 이 기능은 새 결제 수단을 등록할 때만 필요하므로 자주 쓰이지 않습니다. 카드 리더 라이브러리의 용량이 매우 크기 때문에 팀에서는 이를 동적 기능 모듈로 빌드하여 사용자가 필요할 때만 다운로드되도록 만들었습니다.
크리스토페르는 이렇게 말합니다. “전환은 놀라울 정도로 쉬웠습니다. 전혀 문제 없었어요.” 모듈화된 앱을 사용자층에 출시하는 작업도 마찬가지로 수월했습니다. “이 또한 간단했습니다. Google Play와 원활하게 통합되는 앱 배포 도구인 fastlane으로 출시를 자동화하면서 프로세스가 실질적으로 개선되었죠”라고 그는 덧붙입니다.
결과
Cornershop은 앱 크기가 27% 감소했다고 보고했으며 이는 시작에 불과합니다. Cornershop은 첫 번째 모듈화 작업에서의 성공을 바탕으로 바코드 스캐너와 같이 이전에는 용량이 너무 커서 고려할 수 없었던 더 많은 기능을 추가하려고 합니다.
Cornershop에서는 App Bundle을 고려 중인 다른 개발자에게 이렇게 조언합니다. “두 가지 프로세스로 나누어 볼 수 있어요. 하나는 구성요소를 캡슐화하여 모듈로 분리하는 작업이고, 나머지 하나는 이러한 모듈 중에 앱에서 삭제하고 필요할 때만 제공해도 되는 모듈이 무엇인지 결정하는 것이죠.” 두 가지 프로세스를 구분하여 생각해 보고 프로세스를 통해 얻고자 하는 목표를 정의해 본다면 아주 간단하게 앱 크기를 줄일 수 있습니다.
시작하기
모든 앱과 게임 개발자는 Android App Bundle을 사용할 수 있습니다. 지금 바로 시작하세요.