ランチャーアイコンがスマート&モダンなった!

投稿日:  更新日:

「ランチャーアイコン」は、携帯端末のユーザ向けにアプリを表現したアイコンです。

別の言い方をすれば、アプリの顔になるアイコンです。

端末を操作していれば、必ず何処かでランチャーアイコンが目に入ります。非常に見る頻度の高い画像の一つです。

長くアンドロイド端末を使っている人は、Android 8(API 26)からランチャーアイコンが変わった事にお気づきでしょうか?

「アプリの絵画的な絵柄」から「アプリの記号的な絵柄」が多くなり、形状も統一されるようになりました。

ホーム画面にランチャーアイコンが並ぶ様は、端末のスマートさ(恰好がよい、洗練されている)を醸し出しています。

少しモダンな感じにも見えるかな!

この変化は、Android 8でランチャーアイコンの仕様が変更になったことに起因しています。

どのような仕様に変わったのかを、アプリ開発の面から紹介します。

※環境:Android Studio Otter | 2025.2.1 Patch 1

スポンサーリンク

ランチャーアイコン

「ランチャーアイコン」は、携帯端末のユーザ向けにアプリを表現したアイコンです。ホーム画面やアプリのリストに並びます。

ランチャーアイコンの概要

ランチャーアイコンはAPI 26で大きく仕様を変えています。ここで、「レガシーアイコン(API<26)」から「アダプティブアイコン(API≧26)」になりました。

レガシーアイコン

アプリを表現した画像を、そのまま使ったアイコンです。

形状は統一されていません。

レガシーアイコン

※API 24より

アダプティブアイコン

アプリを表現した画像を、ベース形状(円、丸みのある四角形、正方形など)の中に収めたアイコンです。

ベース形状は、デバイス毎に異なる場合があります。しかし、デバイス内は統一されます。

アダプティブアイコン

※API 26より

アダプティブアイコン

※API 34より

ちなみに、最新の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の概要

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」の指定は、あえてランチャーアプリから円形アイコンを所望された場合の対応のようです。

スポンサーリンク

関連記事:

「Image Asset Studio」は、アイコンのソース画像を入力すると、レガシーアイコンとアダプティブアイコンを作成して、アイコン画像を出力してくれます。 この時、ソース画像のサイズには決まりがあり、外れたサイズを入力すると適切なアイコンを作れません。 絵柄の小さいアイコンになったり、欠けたアイコンになったり、失敗します。 適切なアイコンが作れるように、ソース画像とアイコン画像のサイズの関係を理解しましょう! ※環境:Android Studio Otter | 2025.2.1 Patch 1 ...
スポンサーリンク