it-swarm.com.ru

Xcode запустит приложение на симуляторе, но не на устройстве

Я получаю следующую ошибку при попытке запустить приложение на моем устройстве.

error: failed to launch '/Users/michael/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos/Word Processor.app/Word Processor' -- No such file or directory (/Users/michael/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos/Word Processor.app/Word Processor)

Приложение отлично работает в симуляторе. Когда я пытаюсь выполнить отладку на устройстве, оно, кажется, копирует приложение (я вижу значок), но затем останавливается с приведенным выше сообщением. XCode говорит, что приложение запущено на моем iPod, но на моем iPod ничего не происходит.

Когда я нажимаю на приложение, оно запускается, но кажется, что ему не хватает ресурсов ........ Другие мои проекты работают должным образом. Какие настройки мне нужно изменить, чтобы эта работа работала правильно? Глядя на сообщение об ошибке, я думаю, что в моем Mac для поиска приложения. Но это не имеет смысла, так как я пытаюсь запустить его на своем 4-м поколении iPod touch. Я использую Xcode 4.3.1 и iOS 5.1

46
Pterie Daktyl

С Mountain Lion и последней версией Xcode (4.4.4F250) ни одно из предложений в этой теме не работало напрямую (очистка, очистка проекта, удаление папки с производными данными и т.д.). Эта последовательность сделала. От DhilipSiva :

  1. Отключите ваше устройство
  2. Удалить приложение с вашего устройства
  3. Выйти из Xcode (не просто закрыть окно, выйти из него)
  4. Удалить папку производных данных rm -fr ~/Library/Developer/Xcode/DerivedData (консоль)
  5. Запустите Xcode, подключите устройство и запустите проект
77
NathanChristie

Это постоянная проблема, с которой сталкиваются многие разработчики в текущей версии XCode. Временный обходной путь - последовательно удалять папку DerivedData.

Вы можете добавить это в скрипт сборки или даже сделать его работой cron:

rm -rf ~/Library/Developer/Xcode/DerivedData

Грустно, но верно.

14
Matthew Frederick

Я решаю это, перейдя в Targets-> Info -> Required Device functions и удаляю опцию с помощью armv7.

Надеюсь это поможет!

14
Chronos

Для меня перезапуск Xcode, очистка DerivedData и перезапуск устройства в большинстве случаев были недостаточны, пока я не выяснил, что iTunes также работает, и после выхода из iTunes все работало нормально!

Так что мои шаги теперь просты:

1. Выйти из Xcode.
2. Если iTunes работает, закройте iTunes.
3. Открыть проект.

Нет необходимости удалять приложение с устройства, очищать проект или перезагружать/отключать устройство .. Я думаю, это потому, что Xcode и iTunes используют некоторые общие библиотеки (как вы знаете, Xcode Installer всегда просит выйти из iTunes при установке iOS SDK).

9
parametr

У меня также была эта проблема после перехода с более низкой версии XCode и iOS на текущую версию XCode и iOS.

Я исправил эту проблему, изменив Цель депозита iOS на более низкую версию, поскольку мое Устройство еще не обновлено до последней версии iOS . Это можно сделать, щелкнув проект на вкладке «Информация».

7
Peter Lakatos

Посмотрели ли вы Сертификаты разработчика и Сертификаты распространения, если у вас есть. При запуске в режиме отладки из Xcode ваше приложение должно быть назначено с сертификатом разработчика, а не с сертификатом распространения. Сертификаты распространения не разрешают отладку.

4
BrettS

Эта ошибка проявляется всякий раз, когда возможности устройства, описанные в Info.plist, не совпадают с возможностями устройства.

В моем случае я запрашивал поддержку GPS и службы определения местоположения и пытался провести тестирование на iPod touch.

4
pgb

Убрал поддержку armv6 и он снова начал работать

3
Wayne Shelley

Я боролся с этой проблемой в течение 2 дней и просмотрел все сообщения, перепробовал все варианты, включая перезапуск Xcode, устройство, удаление папки DerivedData и т.д.

Наконец, проблема была с файлом Info.plist. В моем случае у меня были неправильные пути значков в файле Info.plist. Я предлагаю вам заархивировать приложение, а затем проверить его, чтобы получить точную проблему в вашем случае. Только когда я это сделал, я смог найти проблему.

3
Bijoy Thangaraj

Я много раз решал эту проблему с помощью решения DhilipSiva . Тем не менее, это может не работать иногда. Если это так, рассмотрите возможность удаления и повторного добавления цели.

3
Ave

Я сталкивался с этой же проблемой в нескольких различных проектах, много исследовал на форумах и даже здесь о переполнении стека. Было дано много решений, и некоторые люди, казалось, заставляли их работать, но ни одно из них не помогало мне .... Итак, мы попробовали довольно очевидный ход действий, о котором по какой-то причине мы не думали раньше: я сделал CHMOD -R 777 по пути EXACT, указанному в сообщении об ошибке (я скопировал его напрямую).

Работал как шарм, 100% раз! 

Надеюсь, это поможет, ребята!

1
Adrian Laubisch

Как и у Chronos mentiod, причиной могут быть возможности устройства. Кроме того, я бы сказал, что в моем случае все дело в ключе UIRequiresPersistentWiFi , который (по какой-то непонятной причине) не позволил мне установить мое приложение на iPhone4. Надеюсь, это поможет тем, кто попробовал все остальное и еще не решил проблему.

1
Arthur Gevorkyan

Я решаю это, перейдя в Targets-> Info -> Required Device Возможности устройства и проверяю id на 0 index, если armv7 не на 0 index, затем удаляю другие вещи и armv7 на 0 index и очищаю приложение, подключаю устройство и запускаю.

Надеюсь, это поможет хорошо!

0
Sushil Mishra

Я сделал эти шаги:

  1. Удалить производные данные: rm -rf ~/Library/Developer/Xcode/DerivedData
  2. Глубокая очистка проекта: Shift + опция + клавиша + клавиша + клавиша K
  3. Выйти из проекта
  4. Выйти из XCode
  5. Удалил приложение с моего устройства

Когда я снова открыл Xcode, запустил проект, а затем запустил приложение, оно успешно запускалось на моем устройстве.

0
Lance Samaria