Когда я должен создавать приложение с поддержкой armv7s?

Сегодня, когда я пытаюсь отправить свое приложение (обновление) в appstore, организатор сказал мне:

"iPhone/iPod Touch: исполняемый файл приложения содержит неподдерживаемые архитектуры: armv7s"

Я отчетливо помню, что его последняя версия была представлена ​​как с armv7, так и с armv7s и успешно, но теперь устроитель изменил свое мнение?

чтобы удалить флаг armv7s, просто, но мое приложение Universal, будет ли приложение, удаленное armv7s, запущено на всех устройствах iOS (например, iPhone 5)? когда я должен строить с помощью aremv7s?

Спасибо.

EDIT: версия xcode здесь вначале 4.5, а затем я попытался 4.5.1

Ответ 1

В этой же проблеме возникла ошибка при обновлении моего приложения в магазине, я четко помню, когда была представлена ​​последняя версия приложения, у нее были обе архитектуры armv7 и armv7s с целевым ОС 4.3 для развертывания. Сегодня при обновлении того же приложения произошла ошибка.

Наконец, я попытался загрузить двоичный файл с помощью Application Loader, и он был успешно загружен в хранилище, поэтому, вероятно, при отправке с помощью Organizer, возможно, существует некоторая недавняя проверка.

Загрузка бинарного файла с помощью приложения Loader Goto Organizer > Щелкните правой кнопкой мыши по архиву > Открыть в Finder. Щелкните правой кнопкой мыши файл архивa > Показать содержимое архива

Перейдите в раздел Продукты > Приложение > [Ваш APP.app]

Сжатие [Ваш APP.app] и загрузка с помощью Application Loader.

надеюсь, что это поможет:)

Ответ 2

Последний Xcode может создавать исполняемые файлы с помощью кода armv7 и/или armv7s. Код armv7 необходим для всех устройств, произведенных после iPhone 3G (не включая 3G) и до (но не включая) iPad 4, iPhone 5; iPad 4 и iPhone 5 могут запускать код armv7, но также и код armv7s. Старые iPhone могут запускать только код armv6.

Вы уже создаете код armv7. Вы должны продолжать это делать и строить код armv7s, а также как только сможете адекватно протестировать свой код на устройстве armv7s. Но если вы не можете протестировать устройство armv7s, вы можете просто отправить код armv7.

Ваше сообщение об ошибке заставляет задуматься, если вы запустили более старую версию Xcode, которая не поддерживает armv7. armv7s поддерживается только Xcode 4.5.

Откидной стороной этого является то, что Xcode 4.5 снижает поддержку armv6. Вы можете выбрать поддержку старых процессоров или новых процессоров, но не оба.

Окончательная морщина: для поддержки разрешения 16: 9 (экран iPhone 5) вам необходимо использовать Xcode 4.5. Это не техническое требование, но Apple, тем не менее, применяет его политикой.