コーディングする男性
Android

【Android】aab(Android App Bundle)とは何か

2020年7月10日

目次Category


とある案件でアプリリリースを行いました。
 
リリース手順書に「aab形式でアーカイブする」と記載されていました。
 
無事リリースはしたものの、一体「aab」とは何だろう。。。
 
ずっと疑問に思っていたので、今回調べてみたことをまとめました。
 
 

apk(Android application PacKage)とは

aabに入る前に、apkについておさらいしてみます。
 
apkとは、簡単にいうと「圧縮ファイル」です。
 
Android端末にインストールするために圧縮したファイルのことですね。
 
逆に、apkでなければインストールできません。
 
ですので、GooglePlayストアのアプリは、apkがズラーっと公開されているイメージです。
 
 

aab(Android App Bundle)とは

それでは次に、aabについてみていきましょう。
 
「aab Android」なんてキーワードで検索したらすぐ分かる時代です。
 
便利な世の中ですね。

Androidデベロッパードキュメントに、以下のように記載されています。

Android App Bundle は、アプリのコンパイル済みコードとリソースをすべて含む新しいアップロード形式です。
ただし、APK の生成と署名は Google Play で行います。
これだけではちょっとよく分からないですね。
もう少し読み進めてみましょう。
Google Play は App Bundle を使用して、基本 APK、動的機能 APK、設定 APK、(分割 APK をサポートしないデバイスの場合)マルチ APK など、ユーザーに提供するさまざまな APK を生成します。
「Google PlayがAPKを生成する」などという物凄いことをさらっと書いてますね。
 
 

なぜaab(Android App Bundle)を使うのか

①様々な端末に適したapkを配布するため

昨今では、多種多様なAndroid端末が販売されています。
これまでは開発者が多くの端末にサポートするため、複数のapkを生成して配布していましたが、それをGoogleが肩代わりし、開発者側の管理の手間が減ります。
 

②容量が少ない

apkに比べ、aabの方が容量が少ない点です。
単純に、容量が少ない方がアップロード時間の短縮が図れます。
 
 

まとめ

ざっくりと調べてみた所感として、とても良いと思いました。
未だapkを使ってリリースしている案件がありますので、ご提案できるようもう少し深掘りして調べてみたいと思います。
 
 

参考

この記事を書いた人

松永裕太郎

松永裕太郎

●2018年 新卒入社
●スマホアプリ /サーバサイド開発 /新卒研修講師
●最近はアジャイル開発について勉強中