Storyboard開発では、LaunchScreen.storyboardがあるので、比較的わかりやすいのですが、SwiftUIにはなく、Info.plistを使って実装しなければならないらしいです。今回はその方法をご紹介します。
ちなみに、Storyboardで行う方法もあります。というか、正直Storyboardを使った方が良いです。
Info.plistで設定する方法
Info.plistで簡単に実装できます。
まずは、Assets.xcassetsに、設定したい画像を入れてください。

名前は、LaunchScreenImageにしています。
設定したい背景色を定義してください。

左下の+ボタンを押して、Color Setをクリック

LightモードとDarkモードそれぞれに色を定義してあげましょう。
名前は、LaunchBackgroundColorにしています。

①プロジェクトを選択
②TARGETSを選択
③Infoを選択
④Launch Screenの中に画像と背景色を定義
| Key | Value |
|---|---|
| Image Name | LaunchScreenImage |
| Background color | LaunchBackgroundColor |
ここの文字が一致していないといけないので、しっかりと確認してください。
自分の場合は、シミュレーターを再起動しないと反映されませんでした。
シミュレーターをバツで閉じて再実行してください。キャッシュ?が残るらしく、サイズ調整のために変更して実行してもすぐには変わりません。毎回バツで閉じないと変更されません。。

これで、launchScreenが設定できた思います。
ちなみに、今回はImage NameとBackground Colorを変更しましたが、それ以外にもカスタムできることはあります。画像のサイズに関しては、画像自体のサイズを変えて調整する感じですかね。
| Key | Value |
|---|---|
| Image Name | 画像 |
| Background color | 背景色 |
| Image respects safe area insets | 画像のセーフエリア設定 |
| Show Navigation bar | ナビゲーションバーの表示 |
| Show Tab bar | タブバーの表示 |
| Show Toolbar | ツールバーの表示 |

ただ、このように画像が引き伸ばされるときがあります。
その場合は、以下の記事を見て対応してください。

