#iphone #xcode #xcode4
#iPhone #xcode #xcode4
Вопрос:
У меня есть iPhone 3G (под управлением iOS 4.0), который я использую для тестирования производительности моего приложения на моем старом оборудовании. Раньше я мог использовать устройство без проблем, даже с Xcode 4.
Однако, каким-то образом, когда я установил последнюю сборку Xcode4 (4.0.2 build 4A2002a), я потерял возможность устанавливать свое приложение на это старое устройство. Когда я нажимаю кнопку «Выполнить», я получаю
No provisioned iOS devices are available. Connect an iOS device or
choose an iOS simulator as the destination.
Однако на устройстве ничего не изменилось (мой профиль подготовки по-прежнему установлен и действителен), и весь этот процесс отлично работает для моего основного устройства, iPhone 4.
Я использовал экран приложений в органайзере, чтобы вручную установить приложение на телефон. Это выглядело более многообещающим, поскольку индикатор выполнения начал заполняться и указывал, что он копирует файлы на устройство. Однако перед завершением появилось сообщение:
An unknown error message 'IncorrectArchitecture', was received from the device.
и приложение никогда не отображается на телефоне.
Целью развертывания моего проекта является 3.1.3, а для поля «Архитектуры» в настройках сборки установлено значение «Стандартный (armv6 armv7)»
Я чего-то здесь не понимаю? Почему оно не устанавливается и что изменилось между первым выпуском Xcode4 и вторым выпуском, что могло вызвать это?
Комментарии:
1. Вы пробовали запускать lipo -info в своем двоичном файле, чтобы убедиться, что генерируется код armv6?
2. Ха! Там написано, что это «armv7», Есть ли какие-то другие настройки, которые мне нужно указать, чтобы получить armv6?
Ответ №1:
В целевые параметры (не параметры проекта), убедитесь, что у вас есть:
-
Архитектуры: Стандартные (armv6 armv7)
-
Допустимые архитектуры: armv6 armv7
-
Только для создания активной архитектуры: Нет
(хотя «Да» обычно подходит для отладочных сборок, когда вы используете одно тестовое устройство)
Комментарии:
1. Спасибо! Это выдает вывод armv6, и я могу загрузить приложение на телефон вручную через органайзер, но я по-прежнему получаю «Нет подготовленных устройств iOS доступны», когда я нажимаю Run в Xcode.
2. Это странно… не уверен, что еще предложить. Я бы перезапустил как Xcode, так и iPhone 3G и, наконец, проверил, что срок действия профиля подготовки, установленного на устройстве, не истек.
Ответ №2:
в простых объяснениях у вашего приложения может быть неподдерживаемая версия сборки iOS. либо так, либо около того. действительно старые приложения обычно не запускаются на новых устройствах iOS из-за их сборки, или приложения не работают на 64 битах. это пока простое объяснение.
Комментарии:
1. Вы заметили, что этот вопрос был задан 11 лет назад?