Próbuję wdrożyć moją pierwszą programistyczną aplikację na iPhone'a i napotykam na pewne problemy. Pomyślnie przeszedłem przez Asystenta obsługi administracyjnej online, ale teraz utknąłem. Bez względu na to, co robię, zawsze pojawia się następujący błąd.
/ usr / bin / codeign nie powiodło się z kodem zakończenia 1
Czy ktoś ma jakieś pomysły, dlaczego tak się dzieje?
Odpowiedzi:
Aktualizacja:
Uwaga techniczna w mojej oryginalnej odpowiedzi jest teraz przestarzała. Firma Apple opublikowała zbiór problemów z podpisywaniem kodu (i niektórych rozwiązań) w nowym dokumencie: Uwaga techniczna TN2407 Indeks rozwiązywania problemów z podpisywaniem kodu
Sprawdź właściwość CODE_SIGN_IDENTITY w ustawieniach kompilacji. Czy został tam wybrany Twój profil obsługi administracyjnej?
Musisz też podać prawidłowy identyfikator pakietu w pliku .plist aplikacji.
Identyfikator musi pasować do tego, który podałeś podczas generowania profilu.
Jabłko ma TechNote o tym tutaj .
źródło
Właśnie natknąłem się na ten błąd i oto, co odkryłem na wypadek, gdyby to komuś pomogło: Odkryłem, że możesz kliknąć prawym przyciskiem myszy komunikat o błędzie w Xcode i wybrać opcję rozwijania, aby uzyskać więcej szczegółów, w tym opis problemu.
W moim przypadku miałem dwie kopie mojego certyfikatu programisty o tej samej nazwie w różnych plikach pęku kluczy, a Xcode nie mógł dowiedzieć się, którego użyć.
źródło
Może to być dziwna odpowiedź na problem z kodem w Xcode 9.0. Ja też otrzymywałem ten błąd i nie wiedziałem co zrobić, bo wszystko było w porządku.
Poszedłem do pęku kluczy, miałem opcję logowania "odblokowaną". Zablokowałem go i ponownie skompilowałem kompilację. Sam Xcode poprosił mnie o otwarcie pęku kluczy dostępu. Dałem dostęp i zadziałało.
Kroki były:
źródło
accountsd
poprosiłem o dostęp do pęku kluczy przy ponownym uruchomieniu po aktualizacji, którą odrzuciłem, ponieważ modalne pod spodem były dziwne. Odbijanie pęku kluczy było sztuczkąMiałem dokładnie ten sam błąd i próbowałem wszystkiego pod słońcem, łącznie z tym, co było w innym miejscu na tej stronie, bez powodzenia. Problem polegał na tym, że w Dostępie do pęku kluczy rzeczywisty certyfikat Apple WWDR był oznaczony jako „ Zawsze ufaj ”. Musiał to być „ System Defaults ”. Dotyczy to również Twoich certyfikatów rozwoju i dystrybucji. Jeśli którykolwiek z nich jest nieprawidłowo ustawiony na „ Zawsze ufaj ”, może to najwyraźniej powodować ten problem.
W sekcji Dostęp do pęku kluczy kliknij certyfikat urzędu certyfikacji Apple Worldwide Developer Relations i wybierz opcję Uzyskaj informacje . Następnie rozwiń ustawienia zaufania i w polu kombi „ Podczas korzystania z tego certyfikatu: ” wybierz opcję „ Ustawienia domyślne systemu ”.
Inni komentowali, że może być konieczne zrobienie tego w systemie i pękach kluczy logowania w przypadku tych błędów .
źródło
Może być wiele powodów, dla których pojawia się ten rodzaj błędu:
Sprawdź, czy wybrałeś profil informacyjny, który zawiera prawidłową tożsamość podpisywania kodu i prawidłowy identyfikator pakietu w Ustawieniach. (Przejdź do ustawień kompilacji-> Podpisywanie-> Profil obsługi administracyjnej).
Otwórz dostęp do pęku kluczy i kliknij ikonę kłódki w lewym górnym rogu, aby zablokować pęk kluczy logowania, a następnie ponownie kliknij, aby odblokować.
źródło
Miałem ten sam problem z kompilacją dystrybucji. Stało się to nagle. W rzeczywistości nie miałem tego problemu kilka dni temu i poprawnie skompilowałem moją wersję Ad-Hoc. Ten problem pojawił się, ponieważ mój certyfikat właśnie wygasł. Więc poszedłem stworzyć nowy prowizorium zgodnie ze wskazówkami Apple: (http://developer.apple.com/ios/manage/distribution/index.action).
Po spędzeniu godzin w sieci i upewnieniu się, że nie upadłem na to, co mogło pójść nie tak. Oto, co mnie ratuje, zgodnie z sugestiami Tobiasza i Dana Ray:
Ze szczegółowych informacji dowiedziałem się o niejednoznacznym dopasowaniu dwóch certyfikatów. Jeden z nich był wygasłym certyfikatem w łańcuchu kluczy System. Więc usunąłem wygasły, a potem zadziałało! Zastanawiałem się również, co wpisać w „nazwie pospolitej” podczas tworzenia certyfikatu dystrybucyjnego za pomocą narzędzia pęku kluczy: moje imię lub nazwa firmy. W moim przypadku wpisałem swoje imię. Domyślam się, że jest to ten sam tytuł, do którego odnosi się wiadomość e-mail z automatyczną odpowiedzią dewelopera.
Wielka pomoc. Dzięki.
źródło
Jeśli błąd bezpośrednio poprzedzający błąd znaku kodu mówi coś w rodzaju „rozwidlenie zasobów, informacje wyszukiwarki lub podobne detrytus niedozwolone”
Następnie przejdź do pliku .app w Terminalu i wpisz:
xattr -cr <ścieżka_do_aplikacji_bundle>
ref: https://developer.apple.com/library/content/qa/qa1940/_index.html
źródło
Pomogło mi dodanie
--deep
do innych flag podpisywania kodu w ustawieniach kompilacji. Więcej informacji tutaj: Codesign API Dropbox nie działa w Xcode 4.6.3: „obiekt kodu nie jest w ogóle podpisany”Szkoda, że ten niejednoznaczny błąd ma 400 różnych rozwiązań, ale błądzę.
źródło
Miałem ten sam problem. Ostatecznie okazało się, że mój klucz prywatny nie pozwala na dostęp do niego przez firmę Codesign. Można to zobaczyć w oknie informacyjnym aplikacji pęku kluczy.
źródło
Muszę się zgodzić z Tobiaszem. Błąd jest zbyt ogólny. Kiedy przydarzyło mi się to samo, zagłębiłem się w komunikat o błędzie i zdałem sobie sprawę, że coś schrzaniłem we właściwościach kompilacji, ale nie w podpisywaniu kodu. Więc tak, zagłębię się w szczegóły.
źródło
W moim przypadku błąd wynikał z faktu, że miałem na pęku kluczy dwa klucze o tej samej nazwie. Usunąłem stary i to rozwiązało problem.
Przechodząc do komunikatu szczegółowego, pokaż mi prawdziwy problem.
źródło
po wielu godzinach szukania w Google i wypróbowywania różnych rzeczy, oto co mi to pomogło:
Upewnij się, że na karcie System> Certyfikaty w dostępie do pęku kluczy nie ma żadnych certyfikatów. Usuń stamtąd wszystkie zduplikowane certyfikaty.
Zainstaluj pośredni certyfikat WWDR pod certyfikatami z portalu obsługi administracyjnej, oprócz certyfikatów programistów i upewnij się, że widzisz go na karcie Logowanie> Certyfikaty w Dostępie do pęku kluczy.
mam nadzieję, że to pomoże niektórym z was!
źródło
Ten sam problem z niejednoznacznym (dopasowuje „iPhone Developer: [me]” i /// plik danych biblioteki tweetdecka privateata. Naprawiono go, przenosząc plik do kosza i ponownie logując się do Tweetdeck, ponownie ustawiając hasła. Co za ból.
źródło
Miałem ten sam problem, ale w dzienniku błędów wymieniono również: CSSMERR_TP_CERT_NOT_VALID_YET
Spojrzenie na certyfikat w KeyChain pokazało podobny komunikat. Problem był spowodowany nieprawidłowym ustawieniem zegara systemowego mojego Maca. Jak tylko ustawiłem właściwy region / czas, certyfikat został oznaczony jako ważny i mogłem zbudować i uruchomić moją aplikację na iPhonie
źródło
Otrzymałem również ten błąd („/ usr / bin / Codesign nie powiodło się z kodem zakończenia 1”), a kiedy sprawdziłem Dostęp do pęku kluczy, moje certyfikaty programisty zostały oznaczone jako „Ten certyfikat został podpisany przez nieznany urząd”. Niedawno zaktualizowałem system do Mac OS 10.8 i od tego czasu miałem kilka innych problemów z XCode (4.5.2). Okazuje się, że nie miałem zainstalowanego certyfikatu pośredniego WWDR. Pobrałem to z portalu iOS Provisioning, zainstalowałem w Keychain Access i mój projekt znów się buduje!
źródło
Kiedy pojawił się ten błąd, nawet nie próbowałem podpisać aplikacji. Pisałem aplikację testową i nie obchodziło mnie podpisywanie. Aby pozbyć się tej wiadomości, musiałem wybrać „Nie podpisuj kodu” w Ustawieniach kompilacji pod Podpisywanie kodu.
źródło
Czasami twój folder kompilacji wymaga po prostu czyszczenia - z pewnością zadziałał dla mnie. Dzięki Loafer-Project za rozwiązanie.
źródło
Jedną z możliwych przyczyn jest brak uprawnień do zapisu w katalogu kompilacji.
Rozwiązanie: Usuń cały katalog kompilacji w folderze projektu i odbuduj aplikację.
źródło
Właśnie natknąłem się na ten błąd, ponieważ próbowałem zapisać plik kompilacji na dysku sieciowym, który nie działał. Próbowałem ponownie z mojego komputera i działało dobrze. (Może być konieczne „wyczyszczenie” kompilacji po jej przeniesieniu. Wystarczy wybrać opcję „Wyczyść wszystkie cele” z menu rozwijanego „Budowa”).
Tobias ma jednak rację, zagłęb się w szczegóły kodu, klikając go prawym przyciskiem myszy, aby zobaczyć, jaki jest twój problem.
źródło
Jedną rzeczą, na którą będziesz chciał uważać (to głupi błąd z mojej strony, ale zdarza się), jest to, że adres e-mail dołączony do CSR musi być taki sam jak adres e-mail podłączony do twojego konta Apple Dev. Kiedy użyłem nowego CSR i odbudowałem wszystkie certyfikaty i profile aprowizacji, wszystko było dobrze w Appleville.
źródło
Kolejny powód, sprawdź, czy twoje konto programisty jest połączone z xCode
źródło
Trochę stare pytanie, ale wydaje się, że nadal się zdarza. Inne rozwiązanie:
Wystąpiło u mnie po przywróceniu gałęzi w git. Próbowałem wyczyścić, wyczyścić kompilacje, usunąć pochodne i ponownie uruchomić Xcode, ale bez powodzenia.
Spróbuj ponownie uruchomić komp.
źródło
Miałem ten sam nieznany błąd związany z kodowaniem, o którym wspomniałeś. Podobnie jak w przypadku udzielonej odpowiedzi (ale trochę inna), właśnie zablokowałem dostęp do pęku kluczy i odblokowałem go, i mogłem ponownie zbudować i uruchomić na moim urządzeniu. Jeśli ktoś ma ten sam problem, być może spróbuj najpierw, zanim przejdziesz przez problem ze zmodyfikowaniem hasła pęku kluczy.
źródło
Wrzucając swoje komentarze do pierścienia, natknąłem się na to po próbie odświeżenia mojego środowiska programistycznego po przypadkowym kliknięciu ODMÓW na jednym z żądań aplikacji, po przeszukaniu strony znalazłem kilka rzeczy, które wydawały się nie działać. Oto pełna kolejność, w jakiej próbowałem poprawiać i czy zakończyło się sukcesem:
1) Podjęto próbę wyczyszczenia DerivedFiles i ponownego uruchomienia XCode - bez kości
2) Podjęto próbę zalogowania i odblokowania pęku kluczy, a następnie uruchom ponownie XCode - bez kości
3) Próbowałem odświeżyć moje konto programisty w XCode - bez kostek
4) Rozgryź kulę i po prostu zresetuj cały mój pęku kluczy, po wykonaniu tej czynności moje konto programisty zostało wylogowane (zalogowane ponownie), a następnie ponownie uruchomiłem XCode - bez kości
5) Znalazłem tutaj artykuł, który mówi, że musimy ustawić [login | lokalny | System] / certificate / Apple Worldwide Developer Relations Certificate Authority na „System default”. Ale w moim przypadku był już ustawiony na domyślne ustawienie systemu - bez kości
6) Następnie spojrzałem na mój rzeczywisty login do certyfikatu programisty / moje certyfikaty / Mac Developer: i kiedy tam zajrzałem, było poprawnie ustawione na Potwierdź przed zezwoleniem na dostęp, ALE nie było żadnych wpisów w dolnej sekcji. Powinien być [Xcode, codign, productbuild]. Usunąłem wpis certyfikatu i zrestartowałem XCode - bingo
Certyfikat został dodany i zostałem poproszony. Więc co zrobiłem, nacisnąłem „zawsze pozwalaj”, a potem po prostu się wykopałem.
Musiałem wrócić i ponownie usunąć certyfikat, a następnie przejść przez około 20 okien dialogowych zezwalających podczas czystej kompilacji. Po ukończeniu byłem w stanie całkowicie zbudować.
źródło
W moim przypadku po kilku dniach poszukiwań
Wszystko, co zrobiłem, aby się obrócić, jest wymienione poniżej:
Powinno to działać w przypadku podobnych problemów z kodem.
Uwaga, podczas tego procesu system operacyjny poprosi o potwierdzenie poświadczeń.
źródło
Otwórz ścieżkę projektu w terminalu i wprowadź poniższe polecenia w terminalu
1) znajdź. | xargs -0 xattr -c
2) xattr -rc.
To działa dla mnie.
źródło