質問: 何らかの理由でXcodeのバージョンをあげることができないプロジェクトがある場合、古いバージョンのXcodeのままアプリをリリースし続けることは可能でしょうか?また、そのような運用をされている方はいらっしゃいますでしょうか? 上記のような状態でアプリの動作確認、AppStoreConnectへのアップロードまでは完了したのですが審査時に以下の理由でリジェクトとなります。 ``` Invalid Toolchain - Your app was built with a beta version of Xcode or SDK. Apps submitted to the App Store must be built with the GM version of Xcode 9 and the SDK for iOS 11, tvOS 11, watchOS 4, or macOS 10.13 or later. ``` AppsStoreConnectのアクティビティよりアップロードしたiOSビルドの情報を見ると 今までは、SDKのビルドとプラットフォームのビルドが同じ ``` SDKのビルド : 16A366 プラットフォームのビルド : 16A366 ``` 現状、SDKのビルドとプラットフォームのビルドが異なる ``` SDKのビルド : 16B91 プラットフォームのビルド : 10A255 ``` うまくいかないパターンのビルドを調べるとXcodeのビルド番号が表示されているようで、この辺りの回避策とこちらの原因をご存知の方いましたらご教授お願いできないでしょうか
回答: `Your app was built with a beta version of Xcode or SDK.` と書かれていますので、Xcodeのベータ版を使って審査依頼してリジェクトされているのではないでしょうか? の「Appの提出」に > > App Storeでは、ベータ版Xcodeを使用して作成されたAppやベータ版OS向けに開発されたAppは受け付けていません。 > > > と書かれている通り、ベータ版のXcodeでビルドしたアプリを審査依頼することはできません。 また、 に > > 2019年3月27日以降、 App Storeに提出されるすべてのiOS Appは、iOS 12.1以降のSDKでビルドされ、iPhone XS Maxまたは12.9インチiPad Pro(第3世代)のオールスクリーンのデザインをサポートする必要があります。 > > > と書かれている通り、3月27日以降はiOS-SDK12.1以降(Xcode10.1以降)でビルドしたものでないと審査依頼できません。 `SDKのビルド : 16B91`は、iOS-SDK12.1を意味していますが、 `プラットフォームのビルド : 10A255`は、Xcode10.0を意味しており、 Xcode10.0にiOS-SDK12.1を無理やり入れてビルドしたか、 Xcode10.1のベータ版を使ってビルドしたもののように見えます。 最新のXcode10.2(iOS-SDK12.2)を使う必要はありませんが、Xcode10.1(iOS-SDK12.2)の正式リリース版を使ってビルドしたもので審査依頼すればいいのではないでしょうか?