Готово Работает на iPhone
Я пытаюсь проверить свое приложение на iPhone 4S. Когда я создаю и запускаю из Xcode, проект успешно компилируется, но после этого Xcode говорит:
Законченный запуск MyApp.app на MyiPhone
Приложение отлично работает на симуляторе и профиле подготовки работает правильно (я пытался загрузить пустое приложение, и он работает).
Если я попытаюсь вручную загрузить приложение, я получаю это сообщение:
Info.plist для приложения в /Users/ */Documents/App/AppName/DerivedData/AppName/Build/Products/Release-iphoneos/AppName.app указывает CFBundleExecutable из AppName, которое не существует.
Где проблема?
Ответы
Ответ 1
Соединение, которое XCode создает с устройством, является довольно хрупким и может быть легко повреждено, если что-то пойдет не так, как в тесте отладки, чаще всего, если разработчик останавливает сборку, пока он перемещается на устройство.
У меня есть процедура вещей, которые я просматриваю, когда это происходит. Если кто-то не работает, я иду дальше по списку.
-
Проверьте свои сертификаты подписи.
: Эта ошибка может возникнуть, если вы слишком много обходите с сертификатами. Убедитесь, что ваша текущая схема использует подпись Debug при создании отладочной сборки и проверяет параметры вашего приложения, если текущий сертификат подписи отладки является сертификатом отладки. (Не AppStore, AdHoc или Enterprise).
-
Восстановить соединение с устройством
: Посмотрите на устройства в своем Органайзер. Проверьте, присутствует ли устройство, которое вы используете, и помечено зеленой пулей. Если оранжевый или серый, подключите устройство к USB. Для предосторожности подождите несколько секунд, прежде чем вставлять кабель. Это не имеет значения, если вы вытаскиваете кабель из своего mac или части, соединяющей ваш iDevice.
-
Реактивировать разработку на iDevice
: Не зная, почему это происходит, некоторые устройства время от времени возвращаются к стадии разработки. Нажатие кнопки "Включить разработку" в разделе "Органайзер" > "Устройства", похоже, устраняет это.
-
Соединения устройств очистки XCode
: Что-то, что часто необходимо, вы можете просто отключить XCode (и быть в безопасности, закрыть iPhone-симулятор) и запустить его заново. Удаление приложения-отладки, присутствующего в iDevice, также является хорошей идеей.
-
Перезагрузите iDevice
: Как бы это ни казалось, может потребоваться перезагрузка iDevice, поскольку поврежденный на устройстве канал может быть поврежден.
-
Перезапуск вашей машины разработчика
: Если все остальное не работает, часто требуется перезагрузка вашего mac. Я никогда не испытывал эту ошибку, не исправляя ее.
Я надеюсь, что этот контрольный список поможет вам.
Ответ 2
Попробуйте очистить проект.
SHIFT+CMD+K
Ответ 3
Нашел ту же ошибку в XCode 9 во время запуска проекта на iPhone 5s. Очистите проект, и он будет работать.
Ответ 4
У меня была аналогичная проблема. Когда я запускаю программу на iPad2, она компилирует и устанавливает приложение на устройство, ждет некоторое время и отображает предупреждение. Затем я выполнил шаги ниже
1) Удалено это приложение с устройства.
2) Отключил iPad и попытался снова.
Затем он успешно запускается на устройстве. Если это не решило вашу проблему, выполните
Переименуйте приложение на что-то еще и попробуйте запустить. Он будет работать. Наконец, вы можете создать файл "ipa" с дистрибутивом Ad Hod и протестировать его на устройстве.
Ответ 5
Похоже, вы пытаетесь запустить продукт выпуска на устройстве. Возможно, вы подписываете его с помощью производственного ключа. Запустите его как debug.
Ответ 6
Возможно, я совершенно не согласен с этим предположением, но в последний раз я получил то же сообщение, когда у меня были некоторые требуемые аппаратные возможности, установленные в Info.plist, которые не соответствовали целевому устройству. (Например, требуется камера и попытка запустить приложение на iPad1.)
Ответ 7
Я только что закончил аналогичную проблему.
Приложение, работающее на устройстве (iPad 1) и на симуляторе, перестало загружаться на iPad, но продолжал работать по-прежнему на симуляторе. Когда "запускается" с устройством в качестве цели, он компилируется, а затем сразу же переходит в "Законченный запуск...".
Я сделал все обычные биты - удалил приложение с устройства, запустил Product/Clean, удалил производные данные, выключил компьютер и устройство с холодом, но не повезло. Другие приложения для разработки загружены и работают нормально.
В этом приложении используется GameKit. Когда я удалил требование gameKit из Info.plist, приложение снова загрузилось и снова запущено на устройстве, включая функциональность GameKit (без шуток). Когда я снова добавил gameKit, он снова не удался. Когда я добавил требование gameKit к другим приложениям, они также не смогли загрузить его на устройство. Похоже, что что-то случилось с настройкой gameKit на устройстве, хотя gameKit существует и функционирует как всегда. Я подозреваю, что это связано с состоянием песочницы.
Мне нужно сделать несколько изменений, чтобы запустить приложение на iPhone, и я тоже проверю это. Я отправлю сообщение, если выясню.
Ответ 8
Si кажется, что XCode построена, запущена и завершена, но приложение не удалось развернуть и даже не скопировано на устройство.
Фактически, в проекте XCode должно быть что-то, что нарушено. Это легко повредить. Лучшим шагом является создание нового проекта с нуля. Не забудьте добавить поддержку armv6, если это необходимо.
Это хорошо работает для меня!
Ответ 9
Проверьте журнал устройств
Может случиться так, что вы используете профиль обеспечения, который не позволяет одно из прав, перечисленных для вашей цели.
Например
Право "право на имя" имеет значение, не разрешенное профилем обеспечения "Ваше имя профиля"
Ответ 10
Для меня обычным виновником является то, что у меня уже есть магазин приложений на моем устройстве.
Различные/одни и те же номера версий могут ухудшить ситуацию. Я не рассматривал это слишком глубоко, так как удаление версии, которая уже на моем устройстве, как правило, устраняет проблему.