iOSのLaunch Screenの設定方法はいくつかありましたが、iOS13以降のApp Storeに提出されるすべてのAppは、Storyboardを使う必要があるようです。
App StoreにiPhone Appを提出する:Apple公式
UnityではすでにStoryboardに対応していて、Unity 2019.3以降では、Storyboardが自動生成できるようになりました。ただ、設定方法が少しトリッキーでハマってしまったので、設定方法をメモしておきます。
#LaunchScreenにStoryboardを使う方法
まず、Unityの「Project Settings」→「Player」の「Splash Screen」の項目を開きます。
デフォルトでは色々チェックが入っていますが、チェックをすべて外して、下の状態にします。
「Use Storyboard for Launch Screen」にチェックを入れたい衝動に駆られますが、それはワナです。気をつけて。
「Launch screen type」の項目で、下記のどちらかを選択するとLaunch Screenに表示する画像を指定できます。
Launch screen type | 説明 |
---|---|
Image and background(relative size) | スクリーンに合わせて画像が引き伸ばされます。 |
Image and background(constant size) | 画像サイズを指定できます。 |
現時点では「Custom XIB」も選択できますが、将来的には非推奨になると思われます。
適当なLaunchScreen用の画像を入れました。
この設定でビルドすると、Storyboardが自動生成されます。
##Image and background(relative size)
全画面を使うスプラッシュに良さそう。
##Image and background(constant size)
Appアイコンを使う場合は、こっちが良さそう。
やり方が分かると、とても簡単ですね。
#ハマりどころ
私がハマったのは、上記にあった**「Use Storyboard for Launch Screen」**です。
UnityがStoryboardファイルを自動生成してくれるのかと思いチェックを入れたのですが、ビルドエラーが出るようになりました。
ArgumentException : source
Parameter name: The source path cannot be empty.
調べてみると、これは**「Xcodeで作ったStoryboardファイルを使う」**という項目で、Storyboardファイルの指定が必須だったようです。うーん、これは分かりづらい。
ハマる人が大量発生しそうなので、改善してほしいですね。