Xcode: не удалось получить задачу для процесса


255

Я запускаю в режиме релиза свое приложение на iPhone с Xcode 4.

Все работало отлично, пока я не переключился на симулятор и не переключился обратно на iPhone. После обратного переключения приложение запускается на iPhone, но сразу после этого отображается домашний экран, и в Xcode я получаю:

failed to get the task for process 

Я пытался удалить / добавить файл с правами, удалить приложение и перезапустить Xcode, но ничего не поделать.


Вы пытались изменить Bundle ID?
rakeshNS

Ответы:


666

Готов поспорить, что ваш режим выпуска включает компиляцию с вашим сертификатом распространения, что запрещает такое поведение (вы не хотели бы, чтобы какой-то случайный дурак попал в ваше приложение после загрузки его из магазина приложений). Вместо этого скомпилируйте с сертификатом разработки. Вы можете изменить это в настройках здания под подписью кода.


Хорошо, теперь я чувствую себя глупо ... Я по ошибке выбирал Deployment -> iPad и получал эту ошибку. Не мог понять, почему на всю жизнь, пока не понял, переключил его на Development -> iPad, и это сработало. Duh! : P
Джоэл Мартинес

3
Убедитесь, что выбрана правильная цель, и что вы не настраиваете параметры знака кода для теста / другой цели.
Винчил епископ

11
Что-то заставляет задуматься, почему Apple не выдаст нам более полезную ошибку типа «пожалуйста, используйте профиль отладки»
inorganik

7
Весь мой опыт разработки для платформ Apple - чистая боль. Я не знаю, как они могут так мало уважать себя
некоммерческий

1
Да, я совершил ту же ошибку: Xcode благополучно собран и позволил мне попытаться запустить приложение, где я выбрал Предварительный профиль, с сертификатом распространения (а не разработки). Но, серьезно, ПОЧЕМУ ... Почему XCode не может дать наполовину полезное сообщение об ошибке, чтобы предупредить вас об этой проблеме? Это 2016 год. Будет ли когда-нибудь Xcode расти и выглядеть как полуприличная среда ?!
Майк Глэдхилл

24

Измените профиль для подписи кода. Выберите свой проект, перейдите в Настройки сборки> Идентификация подписи кода. Переключиться на другой профиль разработчика.


Существует две настройки сборки, одна в разделе «Проект» и одна в разделе «Цели». Я должен был изменить подпись кода, чтобы они оба работали.
Стивен Хорват 19

7

Если у кого-то возникла эта проблема, но он уверен, что его сертификаты и подпись кода настроены правильно, проверьте вкладку «Возможности» при нажатии на проект (т. Е. Рядом с вкладкой настроек сборки, вкладкой фаз сборки и т. Д.).

В моем случае были неработающие ссылки на Game Center и In-App Покупки, которые требовали исправления (нажав кнопку «исправить меня»), чтобы решить эту проблему.


4

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

Оказывается, моей целью была версия, и поэтому она все еще подписывается с помощью сертификата распространения - либо вернитесь к цели отладки, либо временно измените подпись выпуска на разработку.


4

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


Изменения выше не сработали для меня, но ваше предложение сработало.
Praxiteles

У меня не было никакой удачи вообще. Наконец оказалось, что я настраивал профили обеспечения для моего Проекта. Мне нужно было установить его для цели, которую я строил. Вот так
Suz

3

Я переключился обратно на «Автоматический» в профиле обеспечения настроек сборки для «Отладки» и оставил профиль сертификата выпуска неизменным, мой работал. Пробовал другие ответы. ничего не получалось. Не хотел перенастраивать мои сертификаты. Автоматически на профиле инициализации сделал свое дело

Скриншот


2

Просто получите ту же проблему, установив мое приложение на iPhone 5S с профилем распространения

-> Мое решение состояло в том, чтобы активировать возможности, которые установлены в профиле распространения (в моем случае «Обмен брелками», «Покупка в приложении» и «Игровой центр»)

Надеюсь, это поможет кому-то ...


1

Просто была та же самая проблема - приложение устанавливалось хорошо, но не будет запускаться из Xcode с «запуском процесса: не удалось получить задачу для процесса».

Оказывается, мой сертификат развития истек ночью. Восстановление сертификата и профилей обеспечения решило проблему.


Тоже самое. Вы можете сказать, что что-то не так с сертификатом dev, если статус профиля обеспечения dev в Организаторе гласит «Действительный идентификатор подписи не найден».
Владимир Григоров

1

Если вы установили правильный сертификат подписи кода в « Параметры сборки»> «Подписывание кода» , убедитесь, что вы также используете правильный профиль обеспечения для режима отладки / выпуска.

У меня возникла эта проблема, потому что я использовал специальный профиль обеспечения для обоих режимов отладки / выпуска, который не позволяет использовать профиль разработки при выполнении отладочной сборки.


0

Наличие идентификатора подписи кода разработчика, безусловно, является правильным, но также убедитесь, что ваше устройство добавлено в Member Center через органайзер или через портал для разработчиков.

Несколько дней назад я сбросил список своих устройств, а сегодня неожиданно получил его для iPod, с которым я все время отлаживал. Примерно через 15 минут я понял проблему.


0

У меня была эта проблема после того, как я создал новый сертификат разработчика.

Следующее уже было правильным: старый закрытый ключ был удален из цепочки для ключей, все профили, где были установлены последние обновления, конфигурация сборки и параметры подписи были правильными. И все же у меня была эта проблема.

Решение: мне пришлось перезапустить Xcode (5.1.1), потому что он не знал о моем новом сертификате разработчика. Я также удалил устаревшие профили со своих устройств, чтобы быть уверенным и очистить их.


0

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

Просто пришлось открыть Органайзер -> Выбрать устройство -> Добавить в Центр пользователей


0

У меня была такая же проблема, но в немного другой ситуации. Однажды мое приложение запускается нормально (с помощью обеспечения разработчика), затем я делаю небольшое редактирование моего файла Entitlements, и после этого оно перестает работать. Приложение отлично установлено на моем устройстве, однако каждый раз, когда я пытался его запустить, оно мгновенно закрывалось (после открытия анимации). (Поскольку я также вносил изменения в другие файлы, я не подозревал о следующей проблеме)

Проблема была в формате файла Entitlements, кажется, что следующие объявления не совпадают:

Верный:

<key>get-task-allow</key>
<true/>

Неправильно:

<key>get-task-allow</key>
<true />

Хотя это формат XML, не используйте пробелы в теге, иначе Xcode не сможет подключиться к процессу.

Я использовал профиль обеспечения разработчика все время.

Редактировать: Также убедитесь, что конец файла в вашем файле Entitlements - \ n (LF) вместо \ r \ n (CRLF). Если вы отредактируете файл разрешений в Windows, используя окончания строк CRLF, это может привести к сбою запуска вашего приложения.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.