2017-12-08 21 views
0

私のプロジェクトにはiOS用とwatchOS用の2つのターゲットがあります。
ビルドオプションのプロジェクトビルド設定で、「ビットコードを有効にする」を「はい」に設定しました。
iOSターゲットでは、[ビットコードを有効にする]も[はい]に設定されています。
ただし、watchOS対象のには、「ビットコードを有効にする」オプションがありません。 ターゲットにビットコードビルドオプションがありません

私は私のプロジェクトをアーカイブし、iTunesConnectに提出

は、それが拒否され、私は2つのエラーを言及するメールを取得:

第一のエラー:
無効なバンドル実行 - 実行ファイルxxxxxは不完全なビットコードが含まれています。完全なビットコードでバイナリをコンパイルするには、[Xcode]を開いて[Product]メニューの[Archive]を選択します。

2エラー:
無効セグメントアライメント - アプリケーションバイナリXXXXXには、適切なセグメントのアラインメントを有していません。最新のXcodeバージョンでアプリを再構築してみてください。第1回エラーに


XXXXXは、私はビットコードを有効にするオプションを持っていない私watchOSターゲットです。

2番目のエラー:
私は最新のXcodeバージョンを持っています。

提案がありますか?

EDIT:
それは、ターゲットのビルド設定で、ユーザ定義のフラグ(ENABLE_BITCODE = YES)として欠けている「ビットコードを有効にする」オプションを設定することが可能です。ただし、エラーは同じまま...

答えて

0

2つのことがエラーを解決する必要がありました:どうやら

を、Xcodeの9.2は、iOSがEnable Bitcode下のビルドオプションを設定し、ビルドを対象のみのために持っています。 時計拡張ターゲットでは、ユーザー定義のビルド設定ENABLE_BITCODEYESに設定されている必要があります。

また、私のワークスペースに間違ったパスがありました。
私のワークスペースには2つのプロジェクトがあり、それぞれにiOSとwatchOSターゲットがあります。 1番目のプロジェクトは私のアプリ、2番目のプロジェクトは私のフレームワークです。
Apple Developer Technical Supportは、Xcodeのプロジェクトナビゲータのフレームワークに自分のアプリケーションのすべてのリファレンスを削除し、両方のアプリケーションターゲットのフレームワークをGeneral/Embedded Binariesに追加することを提案しました。

これにより、私はApp Storeに提出して受け入れられた有効なアーカイブを作成することができました。

関連する問題