「ランチャーアイコン」は、携帯端末のユーザ向けにアプリを表現したアイコンです。
別の言い方をすれば、アプリの顔になるアイコンです。
端末を操作していれば、必ず何処かでランチャーアイコンが目に入ります。非常に見る頻度の高い画像の一つです。
長くアンドロイド端末を使っている人は、Android 8(API 26)からランチャーアイコンが変わった事にお気づきでしょうか?
「アプリの絵画的な絵柄」から「アプリの記号的な絵柄」が多くなり、形状も統一されるようになりました。
ホーム画面にランチャーアイコンが並ぶ様は、端末のスマートさ(恰好がよい、洗練されている)を醸し出しています。
少しモダンな感じにも見えるかな!
この変化は、Android 8でランチャーアイコンの仕様が変更になったことに起因しています。
どのような仕様に変わったのかを、アプリ開発の面から紹介します。
※環境:Android Studio Otter | 2025.2.1 Patch 1
ランチャーアイコン
「ランチャーアイコン」は、携帯端末のユーザ向けにアプリを表現したアイコンです。ホーム画面やアプリのリストに並びます。
![]()
ランチャーアイコンはAPI 26で大きく仕様を変えています。ここで、「レガシーアイコン(API<26)」から「アダプティブアイコン(API≧26)」になりました。
レガシーアイコン
アプリを表現した画像を、そのまま使ったアイコンです。
形状は統一されていません。
![]()
アダプティブアイコン
アプリを表現した画像を、ベース形状(円、丸みのある四角形、正方形など)の中に収めたアイコンです。
ベース形状は、デバイス毎に異なる場合があります。しかし、デバイス内は統一されます。
![]()
![]()
ちなみに、最新のAPI 36(Android 16)は、ユーザーがベース形状を選べるようです。
アダプティブアイコンの仕組み
アダプティブアイコンは、BackとForegrondを重ねた画像を、Mask(ベース形状)で切り出したものです。
![]()
BackとForegrondはアプリ開発時にプロジェクトのリソースへ指定します。
Maskはデバイスのシステムが持っており、デバイス毎に異なります。
ですので、デバイスAは丸みのある四角形になり、デバイスBは円になる場合があります。例えば、Android標準端末のNexus、Pixelは円を採用しています。
Image Asset Studio
Android Studioは「Image Asset Studio」というランチャーアイコン作成ツールが実装されています。
アイコンのソース画像を用意すれば、Image Asset Studioを使って、比較的簡単にランチャーアイコンが作成できます。
以下は、デフォルトのアイコンです。

Image Asset Studioはレガシー(円と正方形)とアダプティブアイコンの両方を作ります。
![]()
ちなみに、デフォルトのアダプティブアイコンは「Vector Drawable(ベクターファイル)」です。
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>
現在、ランチャーアイコンに「Vector Drawable」を使用することが推奨されています。
理由は、Vector Drawableがスケーラブルな画像フォーマットのため、画面の解像度に関係なく線の美しいアイコンが表現できるからです。
Image Asset Studioはラスターファイル(PNGが推奨される)とベクターファイル(SVG:Scalable Vector Graphics)を読み込めるようになっています。
アイコンの指定
アプリのランチャーアイコンは、AndroidManifestファイルで指定します。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
...
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
...>
<activity>
...
</activity>
</application>
</manifest>
重要な点は、「mipmap_anydpi-v26」フォルダです。
このフォルダは、「すべての画面解像度で、API≧26の時に使うリソースを格納」という意味です。
ですから、Android 8(API 26)以上の端末では、アダプティブアイコンになります。
ちなみに、「android:roundIcon」の指定は、あえてランチャーアプリから円形アイコンを所望された場合の対応のようです。
関連記事:
