Xcode: nie udało się pobrać zadania do procesu

255

Uruchomiłem w trybie wydania moją aplikację na iPhonie z Xcode 4.

Wszystko działało świetnie, dopóki nie przełączyłem się na symulator i nie wróciłem do iPhone'a. Po ponownym przełączeniu aplikacja jest uruchamiana na iPhonie, ale ekran główny jest wyświetlany natychmiast po Xcode i otrzymuję:

failed to get the task for process 

Próbowałem usunąć / dodać plik Entitlements, usunąć aplikację i ponownie uruchomić Xcode, ale nic nie mogę zrobić.

aneuryzm
źródło
próbowałeś, zmieniając identyfikator pakietu?
rakeshNS

Odpowiedzi:

666

Założę się, że twój tryb wydania obejmuje kompilację z certyfikatem dystrybucyjnym, co uniemożliwia takie zachowanie (nie chciałbyś, aby jakiś przypadkowy głupiec zaczepił się w twojej aplikacji po pobraniu jej ze sklepu z aplikacjami). Zamiast tego skompiluj z certyfikatem programistycznym. Możesz to zmienić w ustawieniach budynku w obszarze podpisywania kodu.

zaciągnięty
źródło
Ok, teraz czuję się głupio ... Przez pomyłkę wybrałem Wdrażanie -> iPad i otrzymywałem ten błąd. Nie mogłem zrozumieć, dlaczego przez całe moje życie, dopóki nie zdałem sobie z tego sprawy, przestawiłem go na Programowanie -> iPad i działało. Hه! : P
Joel Martinez
3
Upewnij się, że wybrano właściwy cel i że nie dostosowujesz ustawień znaku kodowego dla testu / innego celu.
Vincil Bishop
11
W pewnym sensie zastanawiasz się, dlaczego Apple nie dałby nam bardziej użytecznego błędu, takiego jak „skorzystaj z profilu debugowania”
inorganik
7
Całe moje doświadczenie w programowaniu na platformy Apple to czysty ból. Nie wiem, jak mogą mieć tak mały szacunek dla siebie
noncom
1
Tak, popełniłem ten sam błąd: Xcode z radością zbudował i pozwolił mi spróbować uruchomić aplikację, w której wybrałem Profil Tymczasowy, z certyfikatem Dystrybucji (a nie Rozwoju). Ale poważnie, DLACZEGO ... Dlaczego Xcode nie może wyświetlić na wpół użytecznego komunikatu o błędzie, aby ostrzec Cię o tym problemie? Jest 2016. Czy Xcode kiedykolwiek dorośnie i będzie wyglądał jak środowisko przyzwoite?
Mike Gledhill
24

Zmień profil do podpisywania kodu. Wybierz projekt, przejdź do Ustawienia kompilacji> Tożsamość podpisywania kodu. Przełącz na inny profil programisty.

Teofilo Israel Vizcaino Rodrig
źródło
Istnieją dwa ustawienia kompilacji, jedno w obszarze Projekt i jedno w Celach. Musiałem zmienić podpisywanie kodu, aby oba działały.
Stephen Horvath
7

Jeśli ktoś ma ten problem, ale jest pewien, że ma poprawnie skonfigurowane certyfikaty i podpisywanie kodu, sprawdź kartę możliwości po kliknięciu projektu (tj. Obok karty ustawień kompilacji, karty faz kompilacji itp.).

W moim przypadku niedziałające linki do Game Center i zakupów w aplikacji wymagały naprawy (klikając przyciski „Napraw mnie”), aby rozwiązać ten problem.

Charlie Scott-Skinner
źródło
4

Każdemu, kto zetknie się z tym: po przeczytaniu tego, próbowałem rozwiązać problem, ustawiając podpisywanie debugowania na moim certyfikacie programistycznym tylko po to, aby stwierdzić, że wdrożenie nadal nie powiodło się.

Okazało się, że moim celem było wydanie i dlatego nadal podpisuję się przy użyciu certyfikatu dystrybucyjnego - albo wróć do celu debugowania, albo tymczasowo zmień podpisywanie wydania na programistyczne.

Aleksander Niedziolko
źródło
4

Miałem ten sam problem i po przeczytaniu powyższych odpowiedzi wystarczyło mi przejść do Ustawień kompilacji> Podpisywanie kodu> Profil obsługi> Brak i mogłem ponownie uruchomić aplikację na moich urządzeniach. Mam nadzieję, że pomoże to komuś innemu

DamongoCoder
źródło
Powyższe zmiany również nie działały dla mnie, ale Twoja sugestia zadziałała.
Praxiteles
W ogóle nie miałem szczęścia. W końcu okazało się, że ustawiam profile udostępniania dla mojego projektu. Musiałem ustawić go dla celu, który budowałem. whew
Suz
3

Wróciłem do „Automatyczne” w profilu udostępniania ustawień kompilacji dla „Debugowania” i pozostawiłem profil certyfikatu wydania bez zmian, mój działał. Próbowałem innych odpowiedzi. nic nie działało. Nie chciałem ponownie konfigurować moich certyfikatów. Automatycznie w profilu informacyjnym załatwiło sprawę

zrzut ekranu

abiodun ekundayo
źródło
2

Po prostu uzyskaj ten sam problem, instalując moją aplikację na iPhonie 5S z profilem dystrybucyjnym

-> moim rozwiązaniem była aktywacja Możliwości, które są ustawione w Profilu dystrybucji (w moim przypadku „Udostępnianie pęku kluczy”, „Zakup w aplikacji” i „Centrum gier”)

Mam nadzieję, że to pomoże komuś ...

Alexej W.
źródło
1

Miałem tylko ten sam problem - aplikacja była instalowana OK, ale nie uruchamia się z Xcode z komunikatem „uruchomienie procesu nie powiodło się: nie udało się pobrać zadania do procesu”.

Okazało się, że mój certyfikat rozwoju wygasł w nocy. Ponowne wygenerowanie certyfikatu i profili udostępniania rozwiązało problem.

Wybrzeże Morza Tybetańskiego
źródło
To samo tutaj. Możesz stwierdzić, że coś jest nie tak z certyfikatem dewelopera, jeśli status profilu udostępniania deweloperów w Organizatorze brzmi „Nie znaleziono prawidłowej tożsamości podpisywania”.
Vladimir Grigorov
1

Jeśli ustawiłeś poprawny certyfikat podpisywania kodu w obszarze Ustawienia kompilacji-> Podpisywanie kodu , upewnij się, że używasz również poprawnego profilu udostępniania dla trybu debugowania / zwalniania.

Miałem ten problem, ponieważ korzystałem z profilu udostępniania Ad-Hoc dla obu trybów debugowania / wydania, co nie pozwala na używanie profilu programistycznego podczas kompilacji debugowania.

nenchev
źródło
0

Identyfikator podpisywania kodu programisty jest z pewnością poprawny, ale upewnij się także, że urządzenie zostało dodane do Centrum dla członków za pośrednictwem organizatora lub portalu dla programistów.

Kilka dni temu zresetowałem listę urządzeń, a dziś nagle otrzymałem to dla iPoda, z którym cały czas debuguję. Około 15 minut później zrozumiałem problem.

hawkeyecoder
źródło
0

Miałem ten problem po utworzeniu nowego certyfikatu programisty.

Następujące informacje były już poprawne: Stary klucz prywatny został usunięty z pęku kluczy, wszystkie profile były aktualne, konfiguracja kompilacji i ustawienia podpisywania były prawidłowe. Ale miałem ten problem.

Rozwiązanie: Musiałem zrestartować Xcode (5.1.1), ponieważ nie był świadomy mojego nowego certyfikatu programisty. Usunąłem również przestarzałe profile z moich urządzeń, aby się upewnić i posprzątać.

thetrutz
źródło
0

Miałem ten problem podczas próby debugowania aplikacji na urządzeniu, z którego wcześniej nie korzystałem. Profil programisty został poprawnie ustawiony. Urządzenie było częścią konta naszych zespołów, ale nie zostało uwzględnione w moim profilu.

Po prostu musiałem otworzyć Organizator -> Wybierz urządzenie -> Dodaj do Centrum użytkowników

Kevin Hawker
źródło
0

Miałem ten sam problem, jednak w nieco innej sytuacji. Pewnego dnia moja aplikacja uruchamia się dobrze (używając przepisu programistycznego), potem dokonuję drobnych zmian w pliku Entitlements, a potem przestaje działać. Aplikacja zainstalowała się dobrze na moim urządzeniu, jednak za każdym razem, gdy próbowałem ją uruchomić, natychmiast wychodziła (po animacji otwierającej). (Dokonując edycji również innych plików, nie podejrzewałem następującego problemu)

Problem dotyczy formatu pliku Entitlements, wydaje się, że następujące deklaracje nie są takie same:

Poprawny:

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

Błędny:

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

Chociaż jest to format XML, nie należy używać spacji w tagu, ponieważ Xcode nie będzie mógł połączyć się z procesem.

Przez cały czas korzystałem z profilu udostępniania programistom.

Edycja: Upewnij się również, że wiersz kończący się w pliku Entitlements to \ n (LF) zamiast \ r \ n (CRLF). Jeśli edytujesz plik uprawnień w systemie Windows za pomocą zakończeń linii CRLF, aplikacja może się nie uruchomić.

Sipka
źródło