Xcode utknął w komunikacie „Trwa przesyłanie aplikacji”


98

Mam problem podczas przesyłania mojej aplikacji z Xcode do App Store. Zrobiłem wszystko, co dotyczy mojego projektu i działa dobrze na moim iPhonie i iPadzie. Ale kiedy zgłaszam swój projekt, mam ogromny problem.

Najpierw po archiwum wykonałem walidację. Teraz mój plik archiwum w Organizatorze również pokazuje weryfikację statusu. Dlatego uważam, że jestem na ostatnim etapie składania aplikacji.

  1. Kliknąłem na dystrybucję i wybrałem przesyłanie aplikacji do sklepu z aplikacjami.

  2. Po zalogowaniu wybrałem również pliki obsługi.

  3. Utknąłem tutaj. Możesz zobaczyć na zrzucie ekranu poniżej. I nigdy nie widziałem żadnego
    paska postępu, na którym mogę zobaczyć postęp przesyłania lub coś w tym rodzaju.

Jedyny ekran, który widzę, to:

wprowadź opis obrazu tutaj

Edytowano:

Było blisko około 1.30 godziny. A połączenie internetowe działa. Mój plik ipa ma tylko 3,5 MB.

I ostatni, kiedy próbowałem ładowania aplikacji, aby przesłać ten sam otrzymałem następujący ekran, a także przez długi czas w Uwierzytelnianie iTunes Store ... ..

wprowadź opis obrazu tutaj

Co mam teraz zrobić?


1
Tak, zrobiłem to @rokjarc
Avijit

1
To nie powinno być potrzebne, ale może pomoże: stackoverflow.com/a/19918707/653513
Rok Jarc

1
To załatwiło sprawę. Wielkie dzięki. Teraz w iTunes połącz się, pokazując mi status: Oczekiwanie na recenzję. Nieco offtopic, ale czy możesz mi powiedzieć, ile czasu zajmie sprawdzenie moich aplikacji? @rokjarc
Avijit

1
Hej, cieszę się, że pomogło. W ciągu ostatniego miesiąca przesłałem 4 aplikacje. Jedna była początkowa i trwała 8 dni, inne były aktualizacjami i zajmowały od 3 do 5 dni.
Rok Jarc

1
Dziękuję za Twój czas. Jesteś moim bohaterem. @rokjarc
Avijit

Odpowiedzi:


81

Ponieważ poczułem poważny problem w tej sprawie. Uważam, że ta odpowiedź może być pomocna.

Po około 10 do 12 godzinach prób naprawienia tego problemu, a ponieważ wszystko inne dotyczące mojego projektu i kodowania było w porządku, stało się to dla mnie bólem głowy. Ale po uzyskaniu kilku cennych komentarzy od niektórych doświadczonych użytkowników przepełnienia stosu i po przeprowadzeniu dalszych poszukiwań w Internecie, znalazłem kilka wartościowych odpowiedzi.

Ta odpowiedź pomogła mi najbardziej:

program ładujący aplikację utknął na etapie „Uwierzytelniania w iTunes Store”

Jeśli zamierzasz przesłać plik za pośrednictwem modułu ładującego aplikacje i utknie na komunikacie „Uwierzytelnianie w iTunes Store ...”

lub

Zamierzasz przesłać go przez XCode i utknie na komunikacie „Twoja aplikacja jest przesyłana”

Następnie zachowaj spokój i sprawdź tę pierwszą metodę:

  • Sprawdź, czy ochrona zapory jest wyłączona. Jeśli nie, wyłącz go. Może to blokować połączenie komputera z iTunes Store.

  • Wypróbuj inne połączenie internetowe. Celem wypróbowania innego połączenia internetowego jest to, że obecne połączenie internetowe może blokować wymagany port do łączenia się z serwerami Apple.

Jeśli powyższe kroki nie pomogą, skorzystaj z drugiej metody:

Xcode potrzebuje środowiska wykonawczego Java do przesyłania aplikacji do App Store.

wpisz 'java -version' w terminalu, wersja java powinna być 1.6. Jeśli nie, pobierz najnowszą kompatybilną wersję java tylko z centrum pobierania Apple:

http://support.apple.com/kb/DL1572?viewlocale=en_US

Jeśli to nadal nie pomoże, postępuj zgodnie z trzecią metodą:

Ta metoda umożliwia programowi ładującemu aplikację używanie portu HTTP zamiast HTTPS.

  • Przejdź do folderu Java programu ładującego aplikacje: /Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/MacOS/itms/java/lib

  • Otwórz plik net.properties w dowolnej aplikacji do edycji tekstu, takiej jak text matelubsublime text

  • Zmień tę konkretną linię: #https.proxyPort=443port proxy na https.proxyPort=80

  • Zapisz plik. I to wszystko !! Możesz teraz łatwo przesłać swój plik binarny do App Store.

Jeśli powyższe metody nadal nie pomagają, skorzystaj z czwartej metody: Odśwież swój certyfikat

  • Przejdź do portalu programistów iOS ( https://developer.apple.com/membercenter ).

  • Odwołaj bieżący certyfikat używany przez aplikację do podpisywania.

  • Usuń bieżący „profil udostępniania dystrybucji iOS” z portalu dla programistów.

  • Wygeneruj ponownie certyfikat dystrybucji systemu iOS i dodaj je w portalu dla deweloperów.

  • Wygeneruj ponownie „profil udostępniania dystrybucji iOS” do dystrybucji w sklepie z aplikacjami i pobierz na komputer Mac.

  • Zainstaluj to.

  • Spróbuj ponownie, używając programu xcode / ładującego aplikację, aby przesłać kompilację.


2
Świetne wyjaśnienie :) Bardziej szczegółowe podejście do metody odpowiedzi 1.
Rajan Maharjan

2
Zauważ, że musisz usunąć znak krzyżyka (#). Ten znak służy do komentowania i jeśli tam jest, moduł ładujący aplikację nie zobaczy, że chcesz zamiast tego użyć portu 80.
Andy Ibanez

Chłopaki, chcę zadać jedno pytanie. Dla zaktualizowanej wersji muszę zmienić kompilację i wersję z 1.0 na 1.1 w Cele-> Podsumowanie.
Nilesh Kumar

więc o co chodzi? @wimcNilesh
Avijit

1
@wimcNilesh Musisz tylko zmienić pole Wersja pakietu w swoim Info.plist
Avijit

25

Z pewnością problem występuje, jeśli aplikacja utknęła w „procesie zatrzymania aplikacji”. Sugeruję, abyś korzystał z modułu ładującego aplikacje, a nie samego Xcode, ponieważ moduł ładujący aplikacje pokazuje stan aktywności. Możesz wyraźnie wiedzieć, na którym etapie utknąłeś.

Najczęstszym problemem jest utknięcie w kroku „Uwierzytelnianie w iTunes Store ...”.

Możliwe są dwie obejścia, które obejrzałem i ostatecznie przesłałem aplikację do sklepu z aplikacjami. Możesz spróbować obu. U mnie obaj pracowali przynajmniej raz.

Metoda pierwsza: ta metoda wykorzystuje port proxy w celu korzystania z połączenia HTTP przez https

  1. Przejdź do folderu Java programu ładującego aplikacje: /Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/MacOS/itms/java/lib

  2. Otwórz plik net.properties z „wysublimowanym tekstem” lub „mate tekstowym”

  3. Zmień port proxy „# https.proxyPort = 443” na „https.proxyPort = 80”

  4. Zapisz plik i ponownie otwórz moduł ładujący aplikację i spróbuj ponownie.

Metoda druga: ponownie wygeneruj certyfikat i profil udostępniania dystrybucji systemu iOS i spróbuj przesłać

  1. Przejdź do https://developer.apple.com/membercenter

  2. Usuń poprzedni certyfikat, do którego odwołuje się Twoja aplikacja do podpisania.

  3. Odwołaj swój certyfikat dystrybucyjny i pobierz go na swój komputer Mac. I zainstaluj go, klikając dwukrotnie.

  4. Usuń bieżący „profil udostępniania dystrybucji iOS” z portalu dla programistów.

  5. Wygeneruj ponownie „profil udostępniania dystrybucji iOS” do dystrybucji w sklepie z aplikacjami i pobierz na komputer Mac

  6. Zainstaluj go, klikając dwukrotnie.

  7. Spróbuj ponownie za pomocą programu ładującego aplikację, aby przesłać kompilację.

Edycja: ponownie napotkałem ten problem podczas przesyłania nowej kompilacji. Zastosowano obie powyższe metody, ale utknęło w „Uwierzytelnianiu…”. Zrestartowałem książkę Mac i zadziałało.Po ponownym uruchomieniu poprzednie połączenie itunesconnect (które mogło zostać otwarte w przeglądarce przed przesłaniem aplikacji) jest resetowane, co umożliwia ponowne uruchomienie komputera Mac łatwe uwierzytelnienie iTunes Connect. Wczoraj (26 stycznia 2014 r.) Etap uwierzytelniania iTunesConnect został przeprowadzony w ciągu 2 minut. Mam nadzieję, że pomoże to komuś, kto traci cierpliwość, gdy utknął na etapie uwierzytelniania.

Edycja 2: przed usunięciem certyfikatu dystrybucyjnego spróbuj ponownie wygenerować tylko „Profil aprowizacji dystrybucji systemu iOS”. U mnie zadziałało, ale możesz powtórzyć jak powyżej.

Mam nadzieję, że to pomoże. Wszystkiego najlepszego.


Już to rozwiązałem, używając metody First. W każdym razie dziękuję za odpowiedź.
Avijit,

1
@Andru: możesz wybrać odpowiedź mysticboy59 jako poprawną, więc ten temat zostanie zamknięty. Włożył w to trochę wysiłku.
Rok Jarc

Właściwie jest też kilka rzeczy do zrobienia tego. W tym celu dałem odpowiedź, aby mogła pomóc późniejszemu naśladowcy. @rokjarc
Avijit

2
Dobrze, jasne. Na początku to pytanie było bliskie powtórzenia, a teraz jest pełne przydatnych informacji.
Rok Jarc

3
Rozwiązanie 1 zadziałało dla mnie, ZAPISALIŚCIE MÓJ PROJEKT, ponieważ jutro nastąpi zamknięcie sklepu iTunes connect i musiałem dostarczyć grę do dzisiaj :) .. SUPER DZIĘKI!
mm24

19

Wypróbowałem wszystkie kroki z rozwiązania Rajana; żaden nie działał. Jednak te wątki na forum deweloperów Apple ( https://forums.developer.apple.com/thread/76803 ) dały mi rozwiązanie w moim przypadku:

Spróbuj tego, to naprawiło to dla mnie. Otwórz Terminal i uruchom:

cd ~  
mv .itmstransporter/ .old_itmstransporter/  
"/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin/iTMSTransporter"  

iTMSTransporter zaktualizuje się wtedy, a następnie możesz spróbować ponownie przesłać plik w XCode.


Rozwiązany dla mnie też dopiero po ponownym uruchomieniu systemu operacyjnego. Aż do tego mówiło się, że aktualizacja została uszkodzona.
Vladimir Nani

To zadziałało dla mnie, z resetowaniem mojego certyfikatu programisty.
Luke Van W

Zajęło to trochę czasu, ale zadziałało! Nie ma potrzeby resetowania profili certyfikatów / deweloperów.
Babken Vardanyan

10

Dla mnie wystarczy wylogować się ze strony ituneconnect i developer.apple.com działa, a do przesłania wystarczy użyć xcode. Nie ma potrzeby ponownego uruchamiania


6

Mam ten numer dzisiaj. Ale w końcu odkryłem, że jest to spowodowane przez moje złe ustawienia.

W „Ustawieniach kompilacji” celu zmień ustawienia „ Tożsamość podpisywania kodu -> Wersja” na swój certyfikat produkcyjny i „ Profil obsługi administracyjnej” -> Zwolnij” w pliku udostępniania dystrybucji.

Następnie zarchiwizuj i rozpowszechnij ponownie.


2

Możesz spróbować anulować przesyłanie i spróbować ponownie. Jeśli to nie zadziała, możesz wypróbować moduł ładujący aplikacje firmy Apple. Zasadniczo robi to samo, ale nie rezygnuje z binarnego. Program ładujący aplikację można pobrać z serwisu itunes connect. Zobacz https://itunesconnect.apple.com/docs/UsingApplicationLoader.pdf (Pierwsze kroki, strona 9)


+1, przesłanie ponownego uruchomienia pomogło mi w takich sytuacjach.
medvedNick

Ja też tego próbowałem. Tutaj również utknąłem w tej pozycji przez ostatnie 15 minut Uwierzytelnianie w sklepie iTunes ...
Avijit

Czy próbowałeś przesłać ponownie za pomocą xcode, czy próbowałeś załadować aplikację?
Felix Lamouroux

2

Miałem ten sam problem.

Anulowałem i przeprowadziłem sprawdzanie poprawności. Okazało się, że napisałemURL Scheme źle .

Xcode nie dał żadnych błędów podczas przesyłania i po prostu utknął, ale sprawdzenie poprawności dało błąd.

Więc najpierw spróbuj zweryfikować. Mam nadzieję, że to komuś pomoże.


2

spróbuj tego na terminalu

cd ~  
mv .itmstransporter/ .old_itmstransporter/  
"/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin/iTMSTransporter"

pracował dla mnie po godzinach poszukiwań


2

Stało się tak z powodu iTMSTransporter
Spróbuj tego, rozwiązało to za mnie. Otwórz terminal i uruchom:
użyj kolejno tych poleceń na terminalu. Mam nadzieję, że to ci pomoże

  1. cd ~
  2. mv .itmstransporter/ .old_itmstransporter/
  3. "/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin/iTMSTransporter"

iTMSTransporter zaktualizuje się wtedy, a następnie możesz spróbować ponownie przesłać plik w XCode.


1

Wielokrotnie spotkałem się z tym problemem, wypróbowałem wszystkie kroki, ale nadal nie działa (sieć domowa) i spróbuj innej sieci (sieć firmowa). Naprawiłem ten problem, aktualizując najnowszą wersję Java SE z wersji 1.6 do 1.7 i działa to jak urok


1

Szczerze mówiąc, może to nie jest odpowiedź, ale naprawdę mi się udało.

Uruchomiłem Application Loader i zacząłem przesyłać. Podczas przesyłania uruchomiłem Organizatora i wybrałem Dystrybucję przez archiwizator w Xcode i zacząłem przesyłać jednocześnie. Pracowali razem, a druga osoba zakończyła zgłoszenie.

Tylko moje doświadczenie.


1

Problem polegał na tym, że zmieniłem Dev. Konto w pewnym momencie, a sam moduł ładujący aplikacje nie był już autoryzowany. Musisz ręcznie przejść do tego (Xcode -> Open Developer Tools -> Application Loader) i wypełnić dane swojego konta


0

Miałem ten sam problem. Mogę to naprawić poprzez:

  1. Usuń / usuń wszystkie certyfikaty dystrybucyjne i profile obsługi administracyjnej z mojego komputera.
  2. Odwołaj certyfikaty dystrybucyjne i usuń profile udostępniania dystrybucji z Centrum członkowskiego pod adresem developer.apple.com
  3. Utwórz nowy certyfikat dystrybucji, generując nowe żądanie podpisania certyfikatu z dostępu do pęku kluczy
  4. Utwórz nowy profil aprowizacji do dystrybucji w sklepie z aplikacjami
  5. Pobierz nowo utworzony certyfikat i dodaj go do pęku kluczy
  6. Pobierz nowo utworzony profil informacyjny i dodaj go do xcode. LUB zsynchronizuj z Xcode z ustawień konta.
  7. Spróbuj przesłać ponownie.

To jakiś głupi problem, który Apple musi rozwiązać jak najszybciej. Zmarnowałem 2 dni na coś tak głupiego jak to.


Dzięki za twoją odpowiedź kolego. Ale to nie był problem. To cały problem związany z połączeniem ze sklepem iTunes z mojego komputera Mac (proxyPort). (Zobacz zaakceptowaną odpowiedź) W każdym razie zostało pomyślnie wydane w sklepie z aplikacjami.
Avijit

Cóż, jest to przypadek tych samych objawów, ale różnych podstawowych problemów. Nie miałem żadnego problemu z zaporą ani siecią, ale problem dotyczył ponownego wygenerowania certyfikatu i profilu obsługi administracyjnej, mimo że był już prawidłowy. Chciałbym, żeby narzędzie do przesyłania aplikacji miało bardziej „tryb pełnej informacji”, który wyświetlałby dokładny stan, a nie typowy komunikat dla niektórych procesów.
Nitin

0

Miałem ten sam problem. Wypróbowanie wszystkich tych odpowiedzi może czasami zadziałać, ale zwykle zajmuje dużo czasu i może nie działać na końcu, jak w moim przypadku.

Znalazłem rozwiązanie, które prawdopodobnie zadziała dla wszystkich.

  • Utwórz plik .ipa przez: Produkt -> Arcive -> Disribute (Zapisz dla przedsiębiorstwa lub ...) -> Dalej i zapisz .ipa w miejscu docelowym

  • Xcode -> Open Developer Tool -> Application Loader -> Dostarcz swoją aplikację -> Wybierz swój plik .ipa

W ciągu kilku minut Twoja aplikacja zostanie przesłana do iTunes. Powodzenia


0

Wszystko, co zrobiłem, to zduplikowanie mojej aplikacji Loader.app w / Applications i uruchomienie obu programów ładujących aplikacji w tym samym czasie.wprowadź opis obrazu tutaj wprowadź opis obrazu tutaj


Jak zduplikowałeś aplikację?
Isuru,

kopiuj i wklej :)
Muhammad Irfan

0

Miałem ten sam problem po aktualizacji Xcode5 do Xcode6. Po godzinach szaleństwa jedyną rzeczą, która pomogła mi, było usunięcie mojego konta w preferencjach Xcode i ponowne dodanie konta.

W zeszłym tygodniu miałem ten sam problem po aktualizacji do Xcode7, to mi znowu pomogło ...


0

Jeśli pracujesz na maszynie wirtualnej (np. VMWare lub VirtualBox), spróbuj ustawić tryb karty sieciowej z domyślnego NAT na Bridged.


0

To zadziałało dla mnie:

  1. Wyloguj się z portalu iTunes we wszystkich przeglądarkach.

  2. Uruchom ponownie komputer Mac.

  3. Otwórz moduł ładujący aplikacje

  4. Kliknij login Apple w prawym górnym rogu okna programu ładującego aplikacje.

  5. Kliknięcie Dalej zakończy proces uwierzytelniania.

  6. Teraz wykonaj swój proces w zwykły sposób, klikając opcję „Dostarcz swoją aplikację” i postępując zgodnie z dalszą procedurą.


0

Mój problem polegał na tym, że zapomniałem zmienić identyfikatora pakietu w ustawieniach informacji dla celu. Mam nadzieję, że to komuś pomoże.


0

Miałem podobny problem podczas przesyłania aplikacji na iOS przez program ładujący aplikacje, ale raz po otwarciu iTunes równolegle wszystkie nagłe ładowanie aplikacji było szybsze.Nie jestem pewien, czy iTunes ma jakiekolwiek powiązania z programem ładującym.


0

Żadna z odpowiedzi nie działała dla mnie, a przesyłanie plików wisiało przez kilka dni bez żadnego błędu. (moja kompilacja została wygenerowana przy użyciu Expo). Oto, co zrobiłem, aby to zadziałało:

  1. Wytyczne Apple mówią, że jednym ze sposobów przesłania kompilacji jest użycie Transportera .
  2. Używając Transportera, był w stanie wykryć i wyprowadzić błąd.
  3. Okazuje się, że głównym powodem dla mnie była wersja XCode 9, ale musi to być 10.

Mam nadzieję, że pomoże to innym, którzy zmagają się z tym problemem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.