2014-12-18 2 views
10

Этим утром я получил электронную почту от Apple, сказав следующее:IOS 64 бит Совместимость с

Уважаемый разработчик,

Как мы объявили в октябре, начиная с 1 февраля 2015 года новых IOS приложений представленный в App Store должен включать поддержку 64-битной версии и быть построенным с SDK iOS 8. С 1 июня 2015 г. обновления приложений также нуждаются в , чтобы соответствовать тем же требованиям. Чтобы включить 64-разрядный проект, мы рекомендуем использовать настройку по умолчанию для Xcode «Стандартные архитектуры » для создания одного бинарного файла с 32-разрядным и 64-разрядным кодом .

Если у вас есть какие-либо вопросы, посетите Форумы разработчиков Apple.

С наилучшими пожеланиями, компания Apple Developer Technical Support

Теперь у меня есть вопрос, как вы убедитесь, что приложение IOS IS 64bit совместимы?

Мои настройки сборки выглядеть следующим образом: Architectures

Моя цель Развертывание IOS 6,0.

Мне просто нужно подтвердить, что приложение совместимо с 64 бит, я все новичок в iOS и недавно приобрел довольно большой проект, поэтому я бы предпочел спросить и быть на 100% уверенным.

Просто, чтобы сделать вещи более ясными, как вы гарантируете, что приложение iOS совместимо с 64-битной версией? Я знаю, что вам нужно установить определенные правила сборки, например, изображения, но я хочу знать, есть ли способ узнать, что ваше приложение iOS совместимо с 64 бит. 32-разрядные приложения для iOS могут работать на 64-битном оборудовании, поэтому я не верю, что проверяет, работает ли приложение iOS на устройстве.

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

Спасибо!

+0

Я не уверен, что понял вопрос. Не можете ли вы просто проверить его на 64-битном устройстве, чтобы убедиться, что он работает? – Droppy

+1

Как вы гарантируете, что приложение iOS совместимо с 64-битной версией? Я знаю, что вам нужно установить определенные правила сборки, например, изображения, но я хочу знать, есть ли способ узнать, что ваше приложение iOS совместимо с 64 бит. – apmartin1991

+0

В конечном счете вы проверяете это. Если вы хотите узнать, успешно ли он построит 64-битную архитектуру, посмотрите на свои журналы построения. – Droppy

ответ

10

С настройками у вас должно получиться arm64 и armv7 в вашем двоичном формате. Вы не получите armv7, потому что, хотя это действительная архитектура, it's not included in ARCHS_STANDARD, если вы строите на Xcode 6 (See also).

Просто потому, что он работает на 64-битном устройстве, это не значит, что у него 64-разрядная поддержка. 64-разрядные устройства могут запускать 32-разрядные приложения.

Чтобы определить, содержит ли он блок arm64, вам необходимо найти приложение. Перейдите в настройки Xcode и выберите тег Locations. Строка Derived Data сообщает вам, где файлы создаются.

XCode settings : Locations

Открываем терминал (Finder-> Приложения-> Утилиты-> Terminal) и перейдите в эту папку, используя команду 'CD'.В моем случае, мой проект сохраняется в ~/MyProject

$ cd ~/MyProject 
$ cd build 
$ find . -name MyTarget 
./build/MyTarget 
./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/CoreControl 
./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app.dSYM/Contents/Resources/DWARF/CoreControl 

Теперь мы знаем, где двоичный файл хранится (это второй результат), мы можем проверить его, чтобы увидеть, что архитектуры содержит:

$ dwarfdump ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/MyTarget 
---------------------------------------------------------------------- 
File: ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/MyTarget (armv7) 
---------------------------------------------------------------------- 
.debug_info contents: 
<EMPTY> 

В моем случае у меня есть только arm7, а не arm64.

+0

Или посмотрите журнал построения и посмотрите здание и ссылку или архитектуру 'arm64'? – Droppy

+0

Спасибо! Я попробую это сейчас, и я дам вам знать результат, очень четкий, хорошо построенный ответ там с более чем достаточной информацией для новичков. Спасибо (y) – apmartin1991

+0

@ Droppy, который также будет работать, хотя, строго говоря, проверяет, что arm64 был создан при компиляции, а не то, что окончательный вывод всего процесса сборки все еще содержит его. –

Смежные вопросы