Есть некоторые подробности: "отсутствует необходимый архитектуры ARMv7"


После обновления до MonoTouch 5.2.4 и отправки приложения в магазин приложений, оно было отклонено загрузчиком приложений, потому что:

" iPad: в исполняемом файле приложения отсутствует необходимая архитектура. Около должна присутствовать хотя бы одна из следующих архитектур: armv7 "

Есть ли способ обойти это в MonoTouch?

1 2

1 ответ:

Чтобы удовлетворить требования Apple к архитектуре iPad, вы можете использовать:

  • Выберите опцию LLVM и ARMv7 (нет необходимости в ARMv6, если приложение предназначено только для iPad); или

  • Добавьте --armv7 кдополнительным аргументам mtouch . Это не будет использовать компилятор LLVM (но обычный компилятор Mono AOT), но создаст некоторую (не очень) сборку ARMv7.

Использование LLVM приведет к созданию меньшего и более быстрого кода, но это займет некоторое время. гораздо больше времени на сборку приложения (обычно это не проблема для выпуска в appstore). OTOH вы не можете использовать эту опцию для отладки (опять же, это не проблема для сборок appstore).

Должен ли я добавить ARMv6 тоже? для поддержки старого iPhone 3 ?

Сообщение Apple указывает, что вы создаете приложениетолько для iPad . Если это не так, то вам нужно изменить это (чтобы разрешить iPhone, iPod Touch), а не выбор ARM-CPU (используя только ARMv6 в порядке, когда вы нацелены на старые устройства).