Flutter - Make launcher icons
承接上一篇,這次我們在處理App Icons的問題,這地方也有一點小雷,所以來說一下:
flutter_launcher_icons: ^0.13.1
Name | Version |
---|---|
Flutter Version | v3.16.4 |
Flavorizr | v2.2.3 |
Flutter Launcher Icons | v0.13.1 |
初始化
首先,早期的做法我們可以直接在pubspec.dev
新增有關於flutter_launcher_icons
的相關資訊,圖片上是我早期的做法,後續套件更新需要改成flutter_launcher_icons
:
1 | dev_dependencies: |
接著我們只要透過指令就能自動產生App Icon:
1 | flutter pub get |
在Flavorizr的作法
接下來我要介紹關於flavor如何去使用,首先我們同樣新增flutter_launcher_icons
到pubspec
。
1 | dev_dependencies: |
接著我們針對先前的設定來分別在根目錄新增相關的設定檔,透過flutter pub run flutter_launcher_icons:generate
去新增檔案,接著去重新命名各自的環境:
1 | flutter_launcher_icons-development.yaml |
並且針對檔案去修改成我們設定的圖片:
1 | # flutter pub run flutter_launcher_icons |
Android與iOS不同的地方主要是背景色,Android有個設定會把前景色與背景色分開,所以我們需要主動要調整一下,不然Android的App Icons會顯示黑色的背景,導致圖片變得奇怪。
另外同樣的我們可以在staging, production
分別建立不同的圖片,未來在做開發時也會比較好區別。
完成之後我們可以透過command來產生相對應的檔案,他會去查找大約有哪些yaml接著依序新增到各自的資料夾。
1 | flutter pub run flutter_launcher_icons |
新增後我們可以透過先前的flutter run去把程式啟動,Android部分如果看到圖片切換到你設定的圖標那就代表成功。
iOS需要注意的地方
至於為什麼只說Android呢?那是因為flavor跟launcher_icons分別產生的對應檔不太一樣,打開xCode,General -> AppIcons
,你會看見各自環境他是使用developmentAppIcon, stagingAppIcon, productionAppIcon
:
但實際上我們點選左邊側欄的Assets
,你會看到他有兩種名稱一種是Flavor
設定的developmentAppIcon
,另一種是我們透過Flutter Launcher Icons
新增的AppIcon-development
。
我們可以回到設定那去修改相對應的資料把developmentAppIcon
修改成AppIcon-development
:
完成後如下:
接著我們把Flutter重新run一遍,就能正常顯示
以上就是這次的踩雷,那我們就下次見!
感謝閱讀!Bye~