一個 app 的第一印象應該是它的 app icon (launcher icon)。在 Android,在不同的時期前後出了好幾個 app icon 規格。但是 Android 介紹不同種類的 app icon 的文件放得非常分散,如果平時沒有一直留意的話都幾乎肯定會做錯或者做漏。以下是全部 Android app 都會用到 app icon:
- Launcher icon
- Launcher icon(圓形)
- Adaptive launcher icon
- Google Play icon
如果想簡單地做出全部 icon 的話,可以用 Android Studio 內置的 Image Asset Studio。但如果想追求完美的話,還是自行準備圖片比較好。這篇文章整理了不同 icon 的基本規格,寫的時候盡量考慮到設計師。如果有需要的話可以分享給設計師同事參考。
背景知識
屏幕密度
因為 Android 設備有太多款,所以 Android 在處理不同屏幕方面比起 iOS 更細緻:由最基本的屏幕密度到控制在不同屏幕尺寸下的界面排版都比 iOS 有更多設置。如果是設計 app icon 的話,主要留意的是屏幕密度。iOS 目前有三款密度:1x、2x (@2x
) 和 3x (@3x
)﹔而 Android 的密度就有 1x (MDPI)、1.5x (HDPI)、2x (XHDPI)、3x (XXHDPI) 和 4x (XXXHDPI)。建議大家使用向量圖準備原檔,並且以 1x 的尺寸準備圖片。在匯出圖片時才一次過匯出全部密度的 PNG 圖片。
在 Android,一般會使用 dp 這個長度單位來設計 UI。如果不清楚 dp 是甚麼意思的話,可以參考 Material Design 的 Pixel density 部分。但在高密度的屏幕下,如果要把圖案顯示到和低密度屏幕一樣大小(把間尺放在屏幕上量度那個圖案)而又不模糊的話,是要用更多的像素 (pixel, px)。所以就發明了 dp 這個單位來描述尺寸,即使在不同密度的屏幕下 dp 都是一樣。簡單來說,在 1x 的情況下,1dp = 1px。你要在 1x 的情景下繪畫你的圖案,然後按照上一段的 1.5x、2x、3x……倍數匯出成不同尺寸的圖片。
舉個例子:如果要準備一張 32 × 32dp 的圖片,你要匯出以下的 PNG 檔案:
密度 放大倍數 PNG 圖片闊度及高度 (px)
MDPI 1x 32
HDPI 1.5x 48
XHDPI 2x 64
XXHDPI 3x 96
XXXHDPI 4x 128