13
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ERROR ITMS-90206:"Invalid Bundle."のエラー解消方法

Last updated at Posted at 2017-04-04

#動作環境

  • Xcode8.3
  • Swift3.1
  • iOS9.2以上
  • 独自フレームワークをインポートしたプロジェクト

エラー内容

アーカイブしたアプリをiTunens Connectにアップロードしようとしたところ以下のようなエラーがでました。

ERROR ITMS-90206:"Invalid Bundle."

20170404_1491294534.jpg

アプリには独自のフレームワークを取り込んでいます。

だめな対応

このエラーをググると以下のような記事が引っかかりました。

ITMS-90206エラーの回避策

曰く、Extensionアプリを作成している場合は該当ターゲットに余計なFrameworkを含めては行けないそうで解決するには以下のようなスクリプトをBuild Phase Scriptに組む必要があるとのことです。

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then 
    rm -fr Frameworks
fi

しかし今回はExtensionアプリを作成していないので当てはまりませんでした。

しかもこの処理をメインのアプリターゲットに適応してしまって以下の記事ででるようなエラーが出てしまいました。

Library not loaded エラー?ここを見直そう

エラー内容

Dyld Error Message:
  Library not loaded: /Library/Frameworks/xxx
  Referenced from: /Users/USER/Desktop/MyApp.app/Contents/MacOS/MyApp
  Reason: image not found

実行時に必要なフレームワークがロードできないというエラーです。

よくよく見れば、Build Phase Scriptに先程組み込んだスクリプトでフレームワークを消してるんですよね

rm -fr Frameworks

そりゃ、ロードできないはずだ。。

なのでこの対応は見当違いの対応でした。

今回上手く行った対応

今回、該当の独自フレームワークプロジェクトの「Always Embed Swift Standard Libraries」をYESからNOに変更しアーカイブし直したらうまくいきました。

20170404_1491294543.jpg

皆さん同じところでハマった場合は参考にしていただければと思います。

参考

Invalid Bundle, The bundle contains disallowed nested bundles, contains disallowed file 'Frameworks'

13
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?