iOSアプリのxcodeprojをxcodegenで生成しているときにアプリがフルスクリーンにならない時の対処法メモ
現象は、iPhone15 Pro ターゲットとかでビルドしているにも関わらず、かつての iPhone SE みたいな四角い範囲だけしか表示されずフルスクリーンにならない問題。微妙に解像度も低くなっていて明らかにビルドターゲットがおかしい?と疑うが、ちょっと問題の箇所がトリッキー。
xcodegenで生成しているときになりがちな問題だと思ったので、誰かの助けになればと思ってメモっておきます。
問題の状態 https://scrapbox.io/files/65e01f44736dff0024f840f0.png 理想の状態 https://scrapbox.io/files/65e01f7fa17ae8002536cfea.png
解決方法は2パターンあるが、本質的には Info.plist の LaunchScreen の設定が入っていない時に小さくなる。
パターン1: xcodegen で Info.plist を生成している場合
UILaunchScreen の指定が必須
code:project.yml
target:
XXXXXX:
info:
path: "XXXXXX/Info.plist"
properties:
UILaunchScreen: ""
パターン2: xcodeでビルド時に Info.plist を生成しているケース
INFOPLIST_KEY_UILaunchScreen_Generation を Yes にする
code:project.yml
settings:
GENERATE_INFOPLIST_FILE: true
INFOPLIST_KEY_UILaunchScreen_Generation: true
ちなみにこの設定を入れてもxcode側のUIには反映されないので戸惑うが、しっかり生成されるInfo.plistには入っているようなので大丈夫。
本来のUIだとここに出るはずなのだけど、なぜか反映されない謎。
https://scrapbox.io/files/65e029127df5750025439eb9.png