flutter_launcher_icons
を使用することで、iOS、Android両方のアプリアイコンを設定できます。
アイコン画像を用意する
アプリアイコンに表示する画像を用意しましょう。 今回はこちらの画像を使います。

次に、プロジェクト直下にassets/imagesを作り、その中に画像を追加します。 以下に保存しておきます。
assets
└── images
└── icon.png
プラグインのインストール
プロジェクトフォルダ直下に位置する pubspec.yaml の dependencies ブロックの中に、
flutter_launcher_icons: ^0.13.1
を記述します。
もしくは、下記のコマンドをターミナルで実行します。
$ flutter pub add flutter_launcher_icons
^0.13.1はプラグインのバージョンです。 こちら に最新のバージョンが載っていますので確認してください。
そして、pubspec.yamlを開いている状態で、ページ上部にPub getコマンドがあるのでクリックしてください。
すると、Android Studio下部にflutter pub getコマンドが実行されている状態が出力されます。
何も問題なければ、Process finished with exit code 0と出力されて、インストールが完了します。

この一連の動作は、ターミナル上でも実行できます。ターミナルを開いて、以下のコマンドを入力してください。
$ flutter pub get
画像のpassを通す
プロジェクトフォルダ直下に位置する pubspec.yaml の dependencies ブロックの中に、
# 追加
flutter_icons:
android: true
ios: true
image_path: "assets/images/icon.png"
を記述します。
-
android: Android用のアプリアイコンを作成する場合は、trueを設定します。
-
ios: iOS用のアプリアイコンを作成する場合は、trueを設定します。
-
image_path: アプリアイコンとして使用したいアイコン画像ファイルの場所を指定します。
動作確認
実際に動作を確認してみましょう。 下記のコマンドをターミナルで実行します。
$ flutter pub run flutter_launcher_icons:main
以下の画像のように、変更前のアプリアイコンを設定したアプリアイコンに変更することができました。
変更前のアプリアイコン

変更後のアプリアイコン

詳細変更
その他に背景画像や背景色、それぞれにデバイス設定ができます。以下に各プロパティとその使用方法を詳しく解説します。
-
image_path_android: Android用で使用されるアイコン画像ファイルの場所を設定します。定義されていない場合はimage_pathが使用されます。
-
image_path_ios: iOS用で使用されるアイコン画像ファイルの場所を設定します。定義されていない場合はimage_pathが使用されます。
次の定義は、Android8.0以降のアイコン生成時に使用されます。
-
adaptive_icon_background: アダプティブアイコンの背景を塗りつぶすために使用される色または画像を設定します。
-
adaptive_icon_foreground: アダプティブアイコンのアイコン前景に使用される画像を設定します。
まとめ
flutter_launcher_icons
は、アプリアイコンを生成する便利なツールです。
このツールを使うことで、アプリアイコン生成と設定を効率的に行い、さまざまな画面サイズやプラットフォームに適したアイコンを自動で調整してくれます。