web-dev-qa-db-ja.com

Application Loader:エラーITMS-90502

TestFlightに新しいビルドをアップロードしようとしていますが、Application Loaderで次のエラーが表示されます。

エラーITMS-90502:「無効なバンドル。arm64スライスのみを含むアプリは、Info.plistのUIRequiredDeviceCapabilitiesのリストに「arm64」も必要です。」

提案どおりに_arm64_をUIRequiredDeviceCapabilitiesに追加すると、別のエラーが発生します。

エラーITMS-90098:「このバンドルは無効です。キーUIRequiredDeviceCapabilitiesには、「8.0」のMinimumOSVersion値と互換性のない値「arm64」が含まれています。」

この問題の原因と、バンドルに_arm64_アーキテクチャのみが含まれている理由がわかりません。プロジェクトの設定を確認したところ、他のアーキテクチャが含まれているようです。 ARCHS(アーキテクチャ)はStandard architectures (armv7, arm64)に設定され、_VALID_ARCHS_(有効なアーキテクチャ)は_arm64 armv7 armv7s_に設定されます。

最後のビルドをアップロードしようとしてからしばらく経ちました(最大1か月)。 Appleから何かを壊したのですか?(それ以来、私は間違いなくアーキテクチャ設定に触れていません。追加された唯一のものは_UIBackgroundModes = remote-notification_)でした。このエラー?

27

気にしないで、問題を見つけました。アーカイブの構築に使用した構成にはBuild Active Architecture OnlyYesに設定されます。愚かな私。

38

この投稿の数か月後に同じエラーが発生しました。 Googleでこの投稿を見つけましたが、他の人がここに来た場合、同じ経路で、ITMS 90502エラー(これは、2015年10月下旬/ 11月初旬の時間枠におけるこれが新しい要件であることです。).

アプリに他のフレームワークを含める場合、「arm64」に必要なデバイス機能も含まれている必要があります。つまり、これはInfo.plistに含まれている必要があります。

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>arm64</string>
</array>
12

ココアポッドを使用している場合、すべての依存関係にキー「UIRequiredDeviceCapabilities」を追加する必要があります。このポストインストールをPodfileに含めます。

post_install do |installer|
    installer.pods_project.targets.each do |target|
        plist_buddy = "/usr/libexec/PlistBuddy"
        plist = "Pods/Target Support Files/#{target}/Info.plist"

        puts "Add armv7 to #{target} to make it pass iTC verification."

        `#{plist_buddy} -c "Add UIRequiredDeviceCapabilities array" "#{plist}"`
        `#{plist_buddy} -c "Add UIRequiredDeviceCapabilities:0 string armv7" "#{plist}"`
    end
end
10

ターゲットの展開ターゲットがiOS 11.0以降の場合、arm64info.plistが必要です。 Xcode 9.xで新しいプロジェクトを作成すると、UIRequiredDeviceCapabilitiesの下にarmv7が追加されるだけで、バグのようです。

info.plistUIRequiredDeviceCapabilitiesキーを次のように更新します。

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>arm64</string>
</array>
6
Daniel Storm

私はこれを解決しましたERROR-ITMS 90502エラー。

アクティブなアーキテクチャのみがYESに設定されているが、同じエラーが表示される場合。

ただし、お使いの携帯電話がMacに接続できる場合は、切断してアップロードしてください。

私の場合、解決しました!

6
June-Gyu Bae

Xamarinを使用してこの問題が発生しましたが、最終的にこの質問に答えました。

私にとっての解決策は、アプリケーションの構築時にデバッグシンボルが含まれないようにすることでした。

Xamarin Studioで、プロジェクト->オプションを右クリックします。 [ビルド]見出しの下の[コンパイラ]を選択します。 [デバッグ情報]ドロップダウンを確認します。

クリーンアップ、再構築、再パッケージ化、再度アップロードすると、機能しました。

2
GregHNZ

別の方法:

1-テストデバイスをMacから切断します

2-アーカイブ

あなたが言及した問題は、iPhoneが接続されているときにアーカイブしようとしたときにのみ起こりました。

切断中にアーカイブすると、この問題はなくなります。

2
Catarino

IOS 11以降でビルドするときにこの問題に最近誰かがいる場合、このキーはアプリに必要であり、アプリにある拡張機能にも必要です。ただし、フレームワークに含める必要はありません。

2
Daniel Tull

Xamarinで同じ問題が発生しました

問題を修正するために行ったすべては、実際のデバイスを接続している間にビルドタイプをRelease| iPhoneに変更します

この助けを願っています

1
Mina Fawzy

これは私のために働く。

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>armv7</string>
</array>
1
MAhipal Singh

私の場合、私は持っていました:エラーITMS-90503 UIRequiredDeviceCapabilitiesキーにarm64のみ(「のみ」なし)があります

そして:「デバッグ」モードでのアーカイブは私のために働いた

私の場合、Visual Studio for Macでこれを解決したのは、iosオプションパネルでARMv7 + ARM64を設定することでした。

0
Hugo S.