[Unity]「ERROR ITMS-90206」が出てAppStoreへバイナリがアップロードできなくなったお話

Unity

はじめに

先日UnityでビルドしたiOSのアプリをバージョンアップの為にAppStoreへ新しいバイナリをアップロードしたらエラーが出たので、その時の状況と対応方法を紹介しようと思います。

環境

  • Unity 2020.2.1f1
  • Xcode 12.3

エラー内容

AppStoreへバイナリをアップロードしようとしたところ、以下のエラーがでました。

ERROR ITMS-90206: "Invalid Bundle. The bundle at 'XXXXX.app/Frameworks/UnityFramework.framework' contains disallowed file 'Frameworks'."

検索したところ、同じような人たちがUnity Forumにいました。

Bug - An empty folder named 'Frameworks' in UnityFramework.framework
Unity 2019.3.0b3 to build an iOS framework => UnityFramework.framework There is an empty folder in UnityFramework.framework named "Frameworks", and it...

対応方法

UnityでiOSビルド

まずは普通にUnityでiOSのビルドをしXcodeプロジェクトを書き出してください。

Build Settingsを書き換える

Build Settingsの開き、「Always Embed Swift Standard Libraries」の項目を探します

その後、「Always Embed Swift Standard Libraries」を「NO」から「YES」に変更します。

Archiveする

Build Settingsを書き換えたら、通常通りアプリをArchiveします。

Archiveが終わるとArchivesが開きます。

ArchiveしたアプリをFinderで開く

Archiveしたアプリを右クリックし「Show in Finder」を選択します。

するとFinderでArchiveされたバイナリが選択された状態で開きます。

xcarchiveのパッケージの内容を表示

さきほど、Finderで開いた.xcarchiveを再び右クリックし「パッケージの内容を表示」を選択します。

すると、パッケージの中身が表示されます。

Applicationのパッケージの中身を表示

次に上記で開いたFinderでProducts/Applications/XXXXを選択します。このXXXXの部分はアプリによって違います。

そして、再び右クリックし「パッケージの中身を表示」を選択します。

するとApplicationの中身が表示されます。

Frameworksフォルダの削除

これで最後です。上記で開いた内容にFrameworksフォルダがあるのでそれを削除します。

これで作業完了です!

あとはArchivesに戻って、通常のAppStoreへのアップロードする手順と一緒です。

この作業をすることで私も無事にAppStoreへバイナリがアップロードできるようになりました。

さいごに

対応はするのは良いのですが早くなんとかしてほしいですね。。。

おすすめ参考書

コメント

  1. りん より:

    Unity初心者です。xcodeが何をするところなのかもよくわからないまま、たくさんのエラーに困って一つずつ時間をかけて調べて対処してきて、これが一番最後のエラーとなりました。助かりました。無事アップロードまでできました。ありがとうございました。

    • りん より:

      と、思ったのですが、アップロードの過程でリジェクトされていました。

      ”ITMS-90427: Invalid Swift Support – The expected dylibs are missing from the app’s Framework location, such as /Payload/●●●.app/Frameworks.”とメールが来てました。

      どこか設定がわるかったのかもしれません。

      結局、Always Embed Swift Standard Librariesの項目を、Unity-iPhone、Unity-iPhoneTest、UnityFrameworkの全てで、”No”にしたところ、全てアップロードまでスムーズに通りました。

      • nobushiueshi nobushiueshi より:

        お役に立てず残念です。

        > 結局、Always Embed Swift Standard Librariesの項目を、Unity-iPhone、Unity-iPhoneTest、UnityFrameworkの全てで、”No”にしたところ、全てアップロードまでスムーズに通りました。
        このあたりの設定は通常いじらなくてもAppStoreへリリースできるはずです。Unityのバージョンやプラグインの影響、Xcodeのバージョン等が原因だと思われます。一度そこを調べ直したほうが良いと思います。

タイトルとURLをコピーしました