Próbowałem odbudować aplikację, która działała wczoraj. Dostałem wiadomość, że profil wygasł, więc usunąłem go z iPoda i iTunes. Kiedy wybrałem nowy profil (z oznaczeniem * w identyfikatorze), teraz pojawia się błąd:
Błąd znaku kodu: nie można znaleźć profilu obsługi (długi ciąg).
czego mi brakuje? Przejrzałem powiązane pytania i jeszcze nie widziałem tego scenariusza.
źródło
Oto prostsze rozwiązanie, które zadziałało dla mnie i nie wymaga ręcznej edycji pliku projektu:
W XCode w okienku „Grupy i pliki” rozwiń „Cele” i kliknij dwukrotnie cel aplikacji. Spowoduje to wyświetlenie okienka Informacje dla celu. W sekcji „Kompilacja” sprawdź sekcję „podpisywanie kodu” dla wszystkich starych profili i zamień na prawidłowy.
Pamiętaj, że różni się to od dwukrotnego kliknięcia ikony projektu i zmiany profilu z tego miejsca. Całkiem niesamowite :)
Lub ja
źródło
Właściwości projektu i celu -> „Twój profil rezerw” -> OK
Wszystko znów działa!
źródło
Zgadzam się z odpowiedzią Brada, że możesz rozwiązać ten problem, ręcznie edytując swój cel / projekt, usuwając wszystkie takie linie:
Jednak w Xcode 4.2 i nowszych istnieje znacznie łatwiejszy sposób na uzyskanie dostępu do tego tekstu oraz wybranie go i usunięcie. W Nawigatorze projektu po lewej stronie wybierz projekt (najwyższa linia Nawigatora projektu). Teraz wystarczy wybrać Widok> Edytor wersji> Pokaż edytor wersji. Spowoduje to wyświetlenie twojego projektu jako tekstu i możesz wyszukać POSTĘPOWANIE i usunąć kłopotliwą linię bezpośrednio w okienku edytora Xcode.
źródło
Właśnie zobaczyłem wariację na ten temat: wszedłem do pliku project.pbxproj zgodnie z powyższymi uwagami Brada Smitha, z wyjątkiem tego przypadku wszystkie wiersze PROVISIONING_PROFILE wydawały się poprawne, bez wystąpienia „złego” ciągu profilu, którego XCode nie mógł nie znaleźć.
Jednak poprawka była taka sama: usunięcie WSZYSTKICH wierszy PROVISIONING_PROFILE w projekcie.pbxproj, mimo że teoretycznie wyglądały one „dobrze”, a następnie ponowne otwarcie projektu w XCode.
źródło
Aby osiągnąć rozwiązanie Brada w całości w Terminalu, użyj tych poleceń
cd [Xcode project parent]
vi [Xcode project name].xcodeproj/project.pbxproj
/[offending provisioning profile] [Enter]
dd
- usuń całą linięźródło
W moim przypadku problem został rozwiązany poprzez otwarcie okna -> Organizator, wybranie mojego urządzenia i usunięcie starego profilu obsługi administracyjnej w panelu „Obsługa administracyjna” po prawej stronie. Stary był już oznaczony czerwonym symbolem „x”, ale iPhone wciąż go używał.
Oprócz tego profilu pojawiał się także nowy (o tej samej nazwie), a po ponownym uruchomieniu aplikacji miałem go płynnie działać.
źródło
Spędziłem około godzinę, robiąc to i przy pomocy rady Brada i kilku dodatkowych zmian wszystko działało.
Zrobiłem to przy użyciu: 10.7.3, Xcode 4.3.2, iOS 5.1 btw.
1) Kliknij prawym przyciskiem myszy
myapp.xcodeproj
i wybierz zawartość opakowania2) otwórz
project.pbxproj
za pomocą edytora tekstu (nie polecaj textedit, ponieważ może to popsuć formatowanie)3) Przewiń do końca, aż znajdziesz
/* Begin XCBuildConfiguration section */
4) Zauważ, że masz sekcje debugowania i wydania
5) Spójrz na sekcję dotyczącą wydania
CODE_SIGN_IDENTITY
i"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
powinna ona wyglądać mniej więcej tak:6) Spójrz
PROVISIONING_PROFILE
i"PROVISIONING_PROFILE[sdk=iphoneos*]"
powinny wyglądać tak:To powinno pasować do twojego profilu administracyjnego w Xcode. Aby sprawdzić, czy pasują, otwórz Xcode> Okno> Organizator> Urządzenia> Profile obsługi administracyjnej> Kliknij profil prawym przyciskiem myszy> Pokaż w Finderze> Nazwa pliku .mobileprovision to identyfikator Twojego profilu.
7) Przewiń w dół
project.pbxproj
i znajdź drugą instancję sekcji wydania. Druga instancja sekcji wydania powinna kończyć się komentarzem/* End XCBuildConfiguration section */
8) upewnij się, że druga sekcja pasuje do pierwszej sekcji
CODE_SIGN_IDENTITY, "CODE_SIGN_IDENTITY[sdk=iphoneos*]
, iPROVISIONING_PROFILE
wszystkie są wypełnione.źródło
Jedną z propozycji przedstawię, ponieważ nikt jeszcze tego nie powiedział: PROSZĘ PROSZĘ ZROBIĆ kopię zapasową całego pliku .xcodeproj PRZED rozpoczęciem modyfikowania jego zawartości. Zepsucie pliku projektu i brak kopii zapasowej spowoduje bardzo nieprzyjemne doświadczenie.
Możliwość wycofania się z edycji może być darem niebios.
źródło
Właśnie spotkałem ten problem w moim XCode4. Aby to naprawić, musisz umieścić wszystkie poprawne przepisy zarówno w konfiguracji debugowania, jak i wydania.
Próbowałem przesłać (przez zarchiwizowanie) moją aplikację. Zmieniam więc po prostu postanowienia dotyczące debugowania na „Nie podpisuj kodu”, a postanowienie o zwolnieniu do zapisu w App Store w mojej aplikacji.
Napraw to i pozwala mi normalnie archiwizować. Mam nadzieję, że to pomaga.
źródło
Wybierz wiersze podpisywania kodów, które są puste w Dowolnym zestawie SDK systemu iOS i wybierz odpowiedni certyfikat.
źródło
Rozwiązanie Brada Smitha działało dla mnie, ale musiałem również usunąć pole CODE_SIGN_IDENTITY, aby działało.
źródło
Niestety takie podejście mi się nie udało. Ale oto poprawka, która zadziałała dla mnie (aby to zadziałało, potrzebujesz działającego pliku projektu na Subversion lub mniej więcej):
Cofnąłem się do działającej wersji mojego pliku projektu. Ponieważ nie można przywrócić za pomocą Xcode ( gdzie jest opcja „Cofnij” w Kontroli źródła Xcode 4? ) - Użyłem Tortoise, mojej maszyny Windows i tego samouczka ( http://tortoisesvn.net/docs/nightly/TortoiseSVN_pl /tsvn-howto-rollback.html ), aby przywrócić starszy plik projektu.
Ponieważ samouczek nie zadziałał, po prostu użyłem Tortoise, aby zapisać roboczą wersję mojego projektu na pamięci USB, aby przenieść go do mojego komputera Mac. Następnie zastąpiłem nowy zepsuty plik projektu starym działającym, wyczyściłem i zadziałało jak urok!
źródło
Miałem problemy, ponieważ zaktualizowałem mój profil udostępniania AdHoc o nowe urządzenia do użytku w TestFlight. Zakłada się, że tak się dzieje, ponieważ xcode ma stare odniesienie do twojego profilu administracyjnego w ustawieniach kompilacji do podpisywania kodów dla projektu lub celów. Sposób, w jaki naprawiłem mój, to:
źródło
Przynajmniej w Xcode 5 rozwiązałem problem:
W obszarze Profil informacyjny wybierz niepoprawny profil informacyjny, a następnie wybierz prawidłowy profil informacyjny z menu rozwijanego.
źródło
Możesz usunąć stare odniesienie pliku obsługi administracyjnej. Następnie po zaimportowaniu nowego profilu administracyjnego i wybraniu konstruktora Xcode.
źródło