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


242

Це для існуючого додатка, який збирався та розповсюджувався кілька разів. З моменту оновлення до Xcode 5 у мене з’явилася ця помилка.

  1. У моєму підписі коду для налагодження вибрано профіль розробників.
  2. Кілька разів видаляли отримані дані.
  3. Кілька разів киньте
  4. Завантажували та намагалися знову додати свої сертифікати розробників.
  5. Скиньте комп’ютер! І перевіряли оновлення
  6. Спробував, використовуючи чорну магію!
  7. Схема> Конфігурація збірки встановлена ​​на Налагодження

Незвичайні обставини, які я збираю компілювати в iOS 6.1, щоб я міг працювати на своєму iPhone 3GS - базою є SDK iOS 7? Чи може це бути проблемою? Мені просто потрібно протестувати його, перш ніж знайти новий телефон, перш ніж змінити його на iOS 7.


2
Перевірте свою схему, щоб переконатися, що ви фактично працюєте в режимі налагодження.
borrrden

Я забув згадати схему> Конфігурація збірки встановлена ​​на налагодження
elliotrock

Я також отримую це питання. У Xcode 4.x проблем немає. Усі налаштування здаються однаковими. Символи налагодження не повинні бути позбавлені "налагодження", а схема виконує "налагодження" для "Виконати". Це мій єдиний код, який має цю проблему. У цьому коді я використовую push-сповіщення та спільні брелоки.
DBD

Я збираюся відновити проект у xcode5, лише сортуючи репо-речі
1313

Відповіді:


490

Ця помилка, як правило, з’являється, коли ви вибираєте спеціальний профіль забезпечення. Переконайтеся, що ваш підпис коду призначений для розробки.


2
Я пропоную, ніж ви створюєте новий профіль забезпечення в центрі розробок, який включає ваш пристрій. потім завантажте його і використовуйте. Я майже впевнений, що це спрацює.
хасан

7
Налаштування збірки> Профіль надання, встановлений на "Немає", працює для налагодження на пристрої.
Девід Дуглас

7
до речі, переконайтеся, що це робиться як в налаштуваннях проекту, так і в цільовому (особливо, ціль має найвищий пріоритет, тому якщо вам подобається, що я витрачаю 30 хвилин на зміну проекту, і ви не зрозуміли, що ціль відрізняється, ви дізнайся це ...)
viggio24

1
За допомогою XCode 6 мені довелося оновити профілі резервування з обліковим записом розробника, щоб я міг бачити профіль забезпечення iOS Team Provisioning в Налаштуваннях збірки. Щоб оновити: XCode> Налаштування> Облікові записи> Ідентифікатори Apple> Переглянути деталі> Кнопка оновлення внизу.
калана

1
Інколи це рішення не працює, якщо ви не перезавантажуєте xcode. @ hasan83 це все ще відбувається
albanx

90

Ця помилка трапляється, якщо ви використовували профіль надання розподілу для налагодження на пристрої.

Перейдіть до

Build Settings> Provisioning Profileі set to 'None' for Debugging.


2
Думаю, це правильна відповідь для більшості людей.
Джон

39

Нарешті я вирішив це, пам’ятаючи про встановлення параметрів підпису коду та надання параметрів у BOTH проектах та цільових вкладках ...


6
Так. Це було все. Ще 30 хвилин було витрачено завдяки прямому монічному користувальницькому інтерфейсу Xcode. Дякую за економію там!
n13,

Це врятує мене! Дуже дякую!
Євгеній Клебан

31

Коли ваш пристрій підключено до комп'ютера за допомогою кабелю, і ви збираєте + запускаєте додаток, ваш пристрій намагатиметься налагоджувати. Налагодження дозволено лише для профілів розробки.

  1. Якщо ви будуєте + запускаєте профіль розробки + підпису коду, все буде в порядку

  2. Якщо ви будуєте + запускаєте з профілем розповсюдження AppStore + Код підпису дистрибуції, програма навіть не дійде до вашого пристрою. Ця збірка призначена лише для завантаження в AppStore

  3. Якщо ви створили + запустити з профілем розповсюдження AdHoc + Код підпису дистрибуції, ви отримаєте помилку "не вдалось отримати завдання для процесу ...", але додаток буде встановлено у вашому пристрої. Відключіть пристрій і запустіть додаток зі свого пристрою. Він працює в середовищі розповсюдження. Насолоджуйтесь :)


14

ОНОВЛЕННЯ:

Здається, Xcode 5.1 виправляє спадне меню так, що він тепер показує "(бла-бла)", коли два профілі мають однакову назву. Це дозволяє вибрати правильний. Що набагато краще :)


Укушений цим кілька разів. Xcode5 показує "Надання профілю" як єдине поле, ЯКІ ЗАВЖДИ НЕПРАВНІ, і Apple НЕ БУДЕ кодувати свій GUI, як це (помилка початківця в Apple).

У Xcode5 (без попередньої версії) у вас є два значення "Профіль надання". ЦЕ ОБОВ'ЯЗКОВО встановити до того, як Ви встановите "Ідентифікатор підпису коду" Очевидно, оскільки він повинен бути встановлений ПЕРШИЙ ... Apple розмістила його ДРУГО у списку, 3 пункти ВИНИКНУЮ річ, яку вона повинна бути встановлена ​​"раніше".

(бонусні бали за жахливий дизайн GUI там ...)

Це також порушено: якщо у вас є два профілі надання однакового імені, Xcode5 дозволить вибрати лише один з них. Щоб вирішити цю проблему, вам потрібно скористатися утилітою налаштування iPhone, щоб знайти потрібний профіль, знайти 30-значний "Ідентифікатор профілю" та скопіювати / вставити його у значення "Інше" в розкривному списку Провізувальний профіль.

У вашому профілі надання послуг ОБОВ'ЯЗКОВО має бути значення "Налагодження" та інше значення для "Випуск" (якщо ви не створюєте власні мегапрофілі вручну, Apple зберігає ці два окремо).

У профілі налагодження часто є однойменна помилка, описана вище - більшість людей будуть використовувати автоматично створений профіль Apple Provisioning Profile, який Apple неправильно завжди називає однаковим для всіх цілей у всіх проектах. (ще одна помилка в Xcode5).

Після встановлення обох значень ваше поле "Ідентифікатор підпису коду" нарешті почне працювати правильно. Насправді це працює чудово: у більшості попередніх версій Xcode це поле було порушено, і «автоматичний» вибір рідко працював. У Xcode5, він може тільки використовувати код підпису значення знаходяться всередині Надання профілю ви попередньо обрані - і так, здається , щоб отримати його виправити 100% часу Hte.

.


Зверніть увагу, що використовується v7.3 Xcode, і він все ще іноді вибирає неправильний профіль надання при встановленні "Автоматичний", що призводить до цієї помилки.
Еш

12

На основі мого поточного пошуку помилка "Не вдалося отримати завдання для процесу" на xcode 5 може статися з кількох причин:

  1. Одне полягає в тому, що ми налагоджуємо програму, яка підписана профілем надання спеціального розповсюдження.
  2. Ще одна причина полягає в тому, що xcode5 якось не міг знайти правильний профіль надання розробки, хоча ідентифікатор підпису кодування має ідентифікатор підпису розробника.

Для мене це вже другий випадок, як видається, і для цього питання.

Я можу це виправити, змінивши спадне меню налагодження на правильний профіль надання розробки, а потім намагаючись завантажити додаток на реальний пристрій. Xcode дасть цю помилку нижче: введіть тут опис зображення

натисніть "Виправити проблему", щоб продовжити, xcode 5 вирішить проблему. Після виправлення проблеми профіль налагодження знову буде скинутий на "None", не знаючи, чому xcode зробить це.


Я застрягаю в циклі тут - натискання кнопки "Виправити випуск" займе близько 15 секунд, щоб поговорити з сервером, а потім створити додаток, одразу після цього буде точно такий самий підказок, щоб виправити проблему.
Кріс

не впевнений, чому саме так у вашому випадку, я просто спробував те ж саме пару днів тому, воно знову працювало.
windfly2006

+1 для: налагодження програми, яка підписана спеціальним профілем надання дистрибуції. Оце і було моє питання.
Джон Ерк

4

У мене виникли ці проблеми, і як колись я встановив і CODE_SIGN_IDENTITY, і PROVISIONING_PROFILE, це все добре працює,

Зверніть увагу: це змінило Xcode 5, у попередній версії не було запису для PROVISIONING_PROFILE в налаштуваннях збірки

//:configuration = Adhoc
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

Зауважте, що тут мені довелося вручну записати розробника iphone у другий запис, оскільки автоматичний вибір, здається, не працював

//:configuration = Debug
CODE_SIGN_IDENTITY = iPhone Developer: Joe Bloggs (0A0AA00A00)
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer: Joe Bloggs (0A0AA00A00)

//:configuration = Release
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

Потім оновіть та встановіть параметри профілю

додамо, що ваш ідентифікатор профілю 0000 призначений лише для конфіденційності

//:configuration = Adhoc 
PROVISIONING_PROFILE = 11111111-1111-1111-1111-111111111111
PROVISIONING_PROFILE[sdk=iphoneos*] = 11111111-1111-1111-1111-111111111111

//:configuration = Debug
PROVISIONING_PROFILE = 00000000-0000-0000-0000-000000000000
PROVISIONING_PROFILE[sdk=iphoneos*] = 00000000-0000-0000-0000-000000000000

//:configuration = Release
PROVISIONING_PROFILE = 22222222-2222-2222-2222-222222222222
PROVISIONING_PROFILE[sdk=iphoneos*] = 22222222-2222-2222-2222-222222222222

4

Спробуйте перезапустити XCode

Після встановлення параметрів забезпечення та підпису коду з усіх цих пропозицій, перезапуск - це, нарешті, дозволило запустити програму "Провіювання", встановлену "жодним" та "Підписання коду" для розробника iOS (Автоматично)


4

Це може відбуватися шляхом надання профілів. У моєму випадку я спробував запустити додаток на своєму телефоні, і профіль резервування був встановлений у профілі adhoc (XC Ad Hoc), отже, помилка. Мені потрібно змінити його на профіль команди iOS, яким керує xcode (щоб уникнути ручної роботи на центрі розробок).



2

Відповідь hasan83 працювала на мене. Програми Adhoc давали цю помилку, і мій пристрій також не був включений у цей файл забезпечення. Я встановив автоматику для забезпечення та створив. Xcode запропонував виправити проблему, і таким чином виправити проблему, завантаживши та встановивши файл забезпечення розробника.


2

У моєму випадку це тому, що обрана схема Run actionвказує на іншого Target, на який Code Signing IdentityвстановленоiPhone Ditributor


Яке жахливо не описове повідомлення про помилку для простого питання. Економив мені купу часу, дякую.
jungledev

1

Я не прийняв відповіді вище, оскільки був ланцюжок питань, які мені потрібно було вирішити:

  1. Сторінка SDK не встановлюється як розподіл.
  2. Сторінка SDK не встановлена ​​на arm64, що, на мою думку, я спричинив, оскільки я даремно виправляв проблему, складену до arm64.
  3. Потрібно заповнити будь-які старі сертифікати та додати нові з Apple. Гарна справа.
  4. Тепер, на мою думку, Xcode 5 приховує серти та профілі, що додало розчарувань.
  5. Потім переконайтесь, що в налаштуваннях побудови вибрано правильні профілі надання через налаштування налагодження та випуску.

Як завжди дякую за допомогу народів.


1

Тож після тестування всіх цих параметрів, на мою думку, правильно, це те, що тепер вам доведеться створити профіль забезпечення для розвитку, а не лише для дистрибуції. перейдіть на панель налаштувань і під профілями резервування натисніть на створення нових, виберіть розробку, а потім перейдіть до створення налаштувань і встановіть підпис на автоматичне (це обере правильне надання), це зробило це для мене.

Я б очікував, що Apple буде більш інформативною, коли вони вносять такі зміни, як цей дефолт

ура,

Г.


1

Завдяки всій допомозі в інших відповідях я вирішив це так:

  • Створено новий, порожній проект
  • Поставив його на пристрої - він працював чудово
  • У старому проекті відкрийте вкладку «Проект, цілі».
  • У проекті встановіть усі властивості підписання коду так само, як новий порожній проект (у моєму випадку все вимкнено)
  • У цілі зробіть те саме для своєї цілі.

На даний момент важко сказати, яка настройка є для якого режиму роботи, тому я щойно почав з проекту, де все працює.


1

Просто була така ж проблема - додаток встановлювався в порядку, але він не запускається з Xcode із "запуском процесу не вдалося: не вдалося отримати завдання для процесу".

Виявляється, мій термін дії сертифіката розробки закінчився протягом ночі. Відновлення сертифіката та профілів резервування вирішило проблему.


1

Ця проблема трапилася зі мною, оскільки я видалив 'Конфігурацію' під Project => Info.

Щоб вирішити це, перейдіть до "Продукт" => "Схема" => "Керування схемами". Відредагуйте активну схему та перевірте, чи в "Конфігурації збірки" не вказано жодних видалених конфігурацій для кожного процесу (Запуск, Тест тощо).


1

У моєму випадку Xcode не міг автоматично встановити правильний профіль розробника iOS для конфігурації збірки налагодження. Я повинен був встановити це вручну iPhone Developer: My Name (XXXXXX):

Налаштування цільової збірки → Підпис коду → Ідентифікація підпису коду → Налагодження.


1

У моєму випадку я не можу встановити профіль резервування на "none", оскільки мені потрібен профіль резервування для push-повідомлення. Отже, я просто створив інший профіль забезпечення для розробника Apple, профіль резервування для розробника iOS (не розповсюдження iOS), прив’язаний до того ж ідентифікатора програми. Потім скористайтеся цим профілем забезпечення вашого додатка на вкладці Налаштування збірки.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.