iOS9がリリースされたのと同時期に「Xcode」も最新のバージョンがリリースされました。
私はちょうどアプリをアップデートしようとしていたので、Xcodeをアップデートしてからリリースしようと思いました。
そこでアプリをビルドし、いざAppStoreにアップロードしようとした時に、見たことのないエラーが発生しました。
はじめに
今回発生したエラーはこのようなものです。
初めはアプリに不備があるのだろうと思い、探していたのですがバグを見つけることができませんでした。
エラーの内容に、Multitasking support requiresとあります。
:マルチタスクのサポートが必要だよ:
みたいなことが書かれているのだと思います。実機にビルドすることはできるのにAppStoreへ転送する時だけにエラーが出ました。
前回アップデートした時から「マルチタスク」というものは変更していません。
ですので、Xcodeのアップデートによるものだと目処をつけ「Build Settings」あたりを探すことにしました。
Build Settingsを探す
BuildSettings内でMultitaskに関係しそうな部分を探してみましたが、あまりそれらしいものが見当たりませんでした。
少し前にBitcodeのエラーでビルド出来ないということがあったので、それと同じような状態だろうと思いましたが違うようです。
bitcodeのエラーは does not contain bitcodeという内容のエラーでした。
https://clrmemory.com/mac/xcode-error-bitcode/
よく考えたら実機にビルドできるので、Build Settingsは関係ないとすぐにわかったかもしれないですね。
Build Settingsでは見つけることができなかったので、他の部分を適当に探していました。
すると、初めて見る気がする部分を見つけました。その部分にチェックを入れるだけであっさり解決しました。
解決方法
今回の解決方法は「General」内にある「とある項目」にチェックを入れるだけで解決しました。
まず「General」を選択しましょう。
このような部分を探してください。
「Deployment Info」の中に「Requires full screen」という項目があるのがわかりますでしょうか。
この部分は今までのxcodeにあったのかわかりませんが、私は気にしたことはありませんでした。
Requires full screen にチェックを入れるとエラーコード ITMS-90474を回避することができます。
まとめ
Requires full screen について軽く調べてみました。
iOS9にアップグレードしたiPadにはマルチタスク機能があるようです。
iOS9にしたiPadには画面左側と右側で別々のアプリを起動するという機能があるようです。
Requires full screen とはその機能を使うかどうかという設定をできるものでした。
確かに便利そうな機能なのですが、私のアプリはゲームアプリで尚且つ横画面固定なので必要ありません。
ですのでRequires full screenにチェックを入れました。
マルチタスク対応のアプリを作っている人はチェックを入れない方法をとったほうがよさそうですね。
Xcodeがアップデートされるたびに、設定する必要がある項目が増えていくので、忘れないようにメモなどしておきましょう。
ではまた。