Xcode14で、iPadを非対応にする(対象端末から除外する)設定が見つからない
結論:「Supported Destinations」か「Targeted Device Families」の設定を変更する
2022/9/25 Flutter エラー・バグ日記
こちらの日記で、Xcode14にアップグレードしたら、iPadの表示向きを設定できる「iPad Orientation」という項目が追加されたことを書いたが、逆に、iPadを対象端末から外したいときに、どこで設定すればよいか、分からなくなった。
以前は、「TARGETS」の「Runner」→「General」タブ→「Deployment Info」に、「Devices」という項目があり、ここでiPadを対象にするか否か選択できたが、その「Devices」が無くなっている。
ネットで調べるも、Xcode14の正式リリース直後のためか、情報が見つからない。
そこで、Xcode14内を眺めたところ、関係ありそうな箇所が2つあった。
- 「TARGETS」の「Runner」→「General」タブ→「Supported Destinations」にあるデバイスの一覧表 ※Xcode13以前は無かったはず。。
- 「TARGETS」の「Runner」→「Build Setting」タブ→「Deployment」にある「Targeted Device Families」のプルダウン
今まで触ったことがない項目なので、恐る恐るだったが、試したところ、上記いずれの変更でもiPad非対応に変更することができた。
Supported Destinationsを変更する方法
下図のとおり、iPadのアイコンがある行を選択し、左下にあるマイナスボタン「ー」をクリックして削除すれば良い。
これで、「Build Setting」タブにある「Targeted Device Families」も連動してiPhoneのみに変更される。
iPad対応に戻したいときは、「+」をクリックして、一覧からiPadを選択すれば良い。
なお、iPadを削除すると、「General」タブにあった「iPad Orientation」のチェックボックス群(iPadの表示向きを設定するゾーン)は、表示されなくなる。
Targeted Device Familiesを変更する方法
下図のとおり、プルダウンからiPhoneのみを選択すれば良い。
これで、「General」タブにある「Supported Destinations」のiPadの行も連動して削除される。
なお、プルダウンの「Other...」を選ぶと、数字で指定する形式となる。
カンマで区切って指定するが、1→iPhone、2→iPad、3→Apple TV、4→Apple Watchという対応関係になっている。
確認すると、この数字は、ios/Runner.xcodeproj/project.pbxprojのTARGETED_DEVICE_FAMILYに反映されていた。
(例) TARGETED_DEVICE_FAMILY = "1,2"; (iPhone、iPadを対応デバイスに設定した場合)
Xcode14になって、思わぬ部分の仕様が変わって戸惑った。。
\一般的なエラー対処法をまとめた記事はこちら/
リリースしたアプリ(全てFlutterで開発)
個人アプリ開発で役立ったもの
おすすめの学習教材
\超初心者向けでオススメな元Udemyの講座/
\キャンペーン時を狙えば安価で網羅的な内容が学べる(日本語訳あり)/
\Gitの基礎について無料で学べる/
おすすめの学習書籍
\実用的。image_pickerに関してかなり助けられた/
\Dartの基礎文法を素早くインプットできる/