Invalid Bundle - Вложенный пакет не имеет правильных платформ, перечисленных в CFBundleSupportedPlatforms. Info.plist key

Я загрузил приложение в iOS App Store testflight.

В ответ от iOS App Store я получил следующее электронное письмо:

Invalid Bundle - Вложенный пакет не имеет правильных платформ, перечисленных в ключе CF.BundleSupportedPlatforms Info.plist. Как только эти проблемы были исправлены, вы можете повторно добавить исправленный двоичный файл.

Что мне делать, чтобы разрешить это и получить одобрение моего приложения?

Ответ 1

Архивирование и отправка моего приложения со старой версией xcode (6.3.1) решило проблему для меня. Я думаю, что это ошибка xcode 7.

Ответ 2

У меня была такая же проблема здесь, я решаю ее, ища ключевую CFBundleSupportedPlatforms и удаляю ее из любого файла info.plist, который я нашел. используя Xcode 7.0.1

update: после того, как я исправил эту ошибку, я загрузил новый двоичный файл, и он сразу закончил обработку, а старый двоичный файл (с ошибкой Invalid Bundle) до сих пор обрабатывает.

Ответ 3

Я обновился до Xcode7.1, и я больше не получаю ни одной из этих Invalid Bundle писем от iTunes connect. Заранее я связался с яблоком, и они подтвердили, что в IPA нет ничего плохого:

Ive посмотрел ваш IPA, и я ничего не вижу, что будет вы вызываете ошибку CFBundleSupportedPlatforms, как вы видите.

Не могли бы вы попробуете загрузить приложение еще раз, чтобы узнать, все еще не удается? Его возможный iTunes Connect имел периодическую проблему при проверке вашего приложения.

Если эта загрузка по-прежнему не удалась, сообщите мне. Следующим шагом будет для меня эскалация этого в iTunes Connect, чтобы понять, почему ваше приложение не выполняет проверку. Этот шаг может занять некоторое время, поэтому я хочу сначала исключить прерывистую проблему.

После этой почты я повторил попытку, создав новый архив в Xcode7.1 и загрузив его в магазин приложений. И все прошло хорошо.

Ответ 4

Некоторые файлы plist в вашем приложении (это может быть файл фреймворка) имеет ключ CFBundleSupportedPlatforms с неправильным значением. Вы должны найти его и изменить на "iPhoneOS". Для этого вы можете использовать команду grep. Откройте терминал и запустите:

grep -r "CFBundleSupportedPlatforms" /YourProjectPathHere

Он покажет вам все файлы со строкой CFBundleSupportedPlatforms