„Przesłany plik binarny był nieprawidłowy. Klucz CFBundleVersion w pliku Info.plist musi zawierać wyższą wersję niż wersja przesłana wcześniej”.
Otrzymuję ten błąd, kiedy przychodzę, aby przesłać moją aplikację.
Ustawiłem zaktualizowaną wersję na 1.2 w iTunes Connect, a także zaktualizowałem .plist
plik do 1.2.
Nie rozumiem, dlaczego otrzymuję ten błąd. Każda pomoc będzie mile widziana. Dzięki.
objective-c
upload
plist
cfbundleidentifier
Adam H.
źródło
źródło
Odpowiedzi:
Na serwerze przesyłania Apple jest co najmniej 1 znany błąd, którego nie naprawili od ponad 12 miesięcy. Rzeczy, na które należy uważać:
źródło
1.02
w mojej poprzedniej wersji. I napraw to, używając tej odpowiedzi. Dziękuję Ci.FAQ
sekcji dotyczącej przesyłania aplikacji do sklepu z aplikacjami. :))CFBundleShortVersionString
numer wersji, który podałeś w iTunes Connect, powinien być zgodny. Oznacza to, że jeśli pokażesz numer wersji w używanej aplikacjiCFBundleShortVersionString
.CFBundleVersion
Powinien być podwyższony również i to, że ktoś używa Apple ustalić, czy złożenie zaktualizowaną wersję swojej aplikacji.Zaktualizuj numer kompilacji. Numer wersji jest ważny, ale numer kompilacji ma znaczenie. Na przykład miałem moją początkową wersję aplikacji jako:
Jednak gdy próbowałem wgrać następną wersję tj
Nie zaakceptowałoby przesyłania. Po prostu zwiększając numer kompilacji do 1.1, przesyłanie zostało zaakceptowane.
źródło
Xcode 4 pomyśli, że chcesz ponownie przesłać tę samą wersję, jeśli nie zarchiwizujesz ponownie aplikacji. Nawet jeśli zmienisz wersję pakietu i przebudujesz, przesyłanie się nie powiedzie. Pamiętaj, aby zrobić „ Archiwum ” w menu Produkt!
źródło
Wiele odpowiedzi pomogło mi ostatecznie, ale dopiero wtedy, gdy zobaczyłem dokładny numer „wersji”, porównywał Apple.
Chociaż wydawało mi się, że podałem numer wersji 1.0.1, rzeczywista liczba przechowywana przez Apple wynosiła 101. Niektóre z powyższych komentarzy sugerowały, że muszę zmienić moją wersję na 2.0 (20) lub 1.5 (15) lub 1.2 (12 ) - jak widać, wszystkie są mniejsze niż 101. Zaktualizowanie numeru wersji 102 (bez kropek) rozwiązało problem.
źródło
W tym artykule wskazano, że numer wersji widoczny w sklepie z aplikacjami niekoniecznie jest taki sam, jak numer wersji pakietu. Gdy przeglądasz szczegóły swojej aplikacji w iTunes, znajduje się tam link o nazwie „Szczegóły binarne”. Ta strona pokazuje wersję pakietu. Jedna z aplikacji, nad którą pracowałem, była w wersji 1.0, ale jej pakietowa wersja to 2.0. Przesyłanie pakietu z wersją 1.1 nie powiodło się, ale 2.1 zadziałało.
Tak więc istnieje wersja aplikacji i wersja pakietu. Ten problem jest związany z wersją pakietu.
źródło
Wygląda na to, że zamieszanie jest spowodowane formatem liczb. Wersja pakietu nie jest ułamkiem dziesiętnym. Jest to wersja (a może kompilacja), więc 1.11 to właściwie „jeden punkt jedenasty”. Stąd 1,11 jest większe niż 1,2. W tym przypadku udało mi się zastosować 1.20.
źródło
Zwykle może to być spowodowane brakiem numeru wersji. Dlatego dodaj numer wersji w sekcji Identity, a także sprawdź numer kompilacji.
Zachowaj kodowanie ......... :)
źródło
Dla mnie (Xcode 4.5) zmiana numeru kompilacji rozwiązała problem. ustaw wersje na 1.0.2 ... 2.0.2 itd., a następnie zwiększ build # (Adam 3 punkty daj mi idię, gdzie mam szukać).
źródło
Powinieneś być w stanie zalogować się do iTunes Connect i zobaczyć aktualną wersję aplikacji (w tym tę, którą przesłałeś, ale nie jest aktywna). Sprawdź, czy wcześniej nie przesłałeś wersji z wyższym (lub tym samym) numerem wersji.
źródło
Version Mismatch - Neither CFBundleVersion ['201405030503'] nor CFBundleShortVersionString ['201405030503'] in the Info.plist match the version of the app set in iTunes Connect ['1.0.0'].
pojawia się następujący komunikat ostrzegawczy (nie jest to błąd): Ale to porównanie iTunesConnect nie jest przyczyną problemu w tym pytaniu. Porównanie iTunesConnect jest zwykłym ostrzeżeniem, a nie zatrzymującym program błędem.Spędziłem kilka godzin próbując rozwiązać ten problem. Ze wszystkich sił sprawdziłem, czy CFBundleVersion jest rzeczywiście wyższa niż starsza wersja, otwierając info.plist w edytorze tekstu, uzyskując informacje o celu i czytając wersję dotyczącą właściwości, poprosiłem żonę o przeczytanie wersji w iTunes, aby potwierdzić, że nie uderzył mnie nieoczekiwany wcześniejszy Alzheimer.
W końcu to jakoś załatwiło sprawę. Moja starsza wersja to 1.0.4. Próbowałem 1.3.5, 1.4.5 itd .; żaden nie działał. Ale co jest dość zaskakujące, kiedy wszedłem do wersji 2.0.0, program ładujący aplikację podoba się temu, co zobaczył i przesłał go. Czy jest to spowodowane błędem w module ładującym aplikacje?
źródło
W podsumowaniu celów obok numeru wersji w xcode4 jest kompilacja, zacząłem od 1, zwiększam za każdym razem, gdy wykonuję przesyłanie binarne, to rozwiązało problem za mnie
źródło
Jeśli zgłoszony błąd to CFBundleVersion, naprawa jest zwykle dość łatwa. Sprawdź / wypróbuj to:
Na karcie podsumowania zobaczysz, że istnieją dwie różne „wersje”, które można dostosować. Pierwszym z nich jest pole „Wersja”, które jest używane na domyślnym ekranie „Informacje” w aplikacjach na komputery Mac. Ta po prawej to „Wersja kompilacji”. To jest ten, który naprawdę ma znaczenie w przypadku zgłoszeń do App Store!
źródło
Wiem, że to stare pytanie, ale właśnie napotkałem ten problem. Rozwiązałem to, usuwając projekt z archiwum, a następnie ponownie go archiwizując. Najwyraźniej znajdowała się tam poprzednia wersja aplikacji i powodowała zamieszanie.
źródło
Zwróć uwagę na komunikat o błędzie.
Komunikat o błędzie zawiera poprzedni numer paczki w nawiasach kwadratowych (np. [9]).
Dlatego musisz zwiększyć ten numer pakietu (np. 9.1), chociaż twój nowy numer wersji to 1.2
Więc kiedy aktualizujesz wersję z 1.1 do 1.2 w iTunes Connect, musisz ustawić te wartości w swoim projekcie
źródło
Mam w swoim projekcie wersję na iPhone'a i iPada, lista informacyjna dla iPada z jakiegoś powodu nie była powiązana z produktem iPad, sprawdzenie członkostwa docelowego i skojarzenie go z właściwym produktem rozwiązało ten problem.
źródło
Rozwiązanie tego błędu znalazłem w tym poście CFBundleVersion musi być wyższe niż poprzednia wersja
mam nadzieję że to pomoże!
źródło
Popełniłem błąd, zamieniając „Wersja” i „Wersja” nr.
Zamiast umieszczać 2.3 w polu Wersja, umieściłem go w kompilacji nr.
źródło
Oto, jak rozwiązałem problem (i domyślam się, że jest to problem wielu osób):
1) Kliknij kartę ogólną ustawień projektów (do której można uzyskać dostęp, klikając nazwę projektu, która znajduje się na górze wszystkich plików kodu).
2) Upewnij się, że pole kompilacji jest zgodne z tym, co umieściłeś w pliku plist dla klucza „Wersja pakietu”.
To był problem dla mnie, z jakiegoś powodu nie byli zsynchronizowani. Myślę, że kiedy zmienisz klucz wersji Bundler, powinien on się zsynchronizować (i odwrotnie). Ale to się nie stało z jakiegokolwiek powodu - może to być błąd.
źródło
Miałem ten sam problem i stało się tak, ponieważ nie zarchiwizowałem i korzystałem z pierwszego archiwum, którego użyłem w wersji 1.0, ale z wersją 1.0.1. Więc wybrałem urządzenie iOS, zarchiwizowałem, a następnie zweryfikowałem. Ta-daaa, zadziałało!
źródło
Miałem ten sam problem. Zasadniczo moja poprzednia wersja to 1.12. Chciałem ją zmienić na 1.2, ale miałem wspomniany błąd. Spróbowałem 1.20 i wyszło idealnie
źródło
12
lub20
jest idealnym numerem wersji pomocniczej .Żaden zestaw stale rosnących numerów wersji nie działał tak długo, jak długo korzystałem z modułu ładującego aplikacje firmy Apple do przesyłania mojego pliku ipa, ale jeśli użyłem „Organizatora” XCode (znajdującego się w menu rozwijanym „Okno” w wersji 3.2.5) , kliknął przycisk „Zatwierdź ...”, zaczekał na zatwierdzenie mnie, a następnie kliknij przycisk „Prześlij…”, wszystko poszło zgodnie z oczekiwaniami z rozsądnym numerem wersji (takim, który jest o jeden przyrost wyższy niż obecnie dostępny w App Store).
źródło
w xcode 4.2 wydaje się, że nie rejestruje wersji pakietu, jeśli modyfikujesz z pliku info.plist. Ustawiłem nową wersję pakietu bezpośrednio w "info" panelu xcode i teraz działa!
źródło
Znalazłem inne rozwiązanie.
Jeśli wybierzesz cel >> info >> zaktualizuj identyfikator pakietu.
źródło
Miałem ten sam problem. Pierwsza przesłana wersja to 1.5.20 i chciała zaktualizować do 1.7.30.
Po bezskutecznym wypróbowaniu wersji 1.8, 2.0 i 3.0 zaktualizowałem CFBundleVersion do 10.0 i nagle zadziałało.
Nie jestem pewien, jaka jest logika tego zachowania, ale spowodowało to, że straciłem około 2 dni czasu pracy.
źródło
Sprawdź swoją wersję pakietu z poprzednio przesłaną wersją, powinieneś podać wyższą wersję pakietu w porównaniu z wersją pakietu już przesłanej wersji.Już załadowaną wersję można wyświetlić w itunesconnect / application / view details / binary details.
źródło
Spędziłem dwie noce nad podobnym problemem. Moja poprzednia wersja to 1.02 i próbowałem walidować za pomocą 1.2, 1.20, 1.1 i zawsze otrzymywałem nieprawidłowy komunikat binarny.
Rozwiązałem to, wpisując 2.0 jako numer wersji i zadziałało . Podejrzewam, że to również błąd. Nie dostałem tej wiadomości podczas ostatniej aktualizacji mojej gry z 1.0 do 1.1, ale było to z xcode 3. Dzięki za wskazówkę!
źródło
Miałem podobny problem i po spędzeniu pół godziny zauważyłem, że zwiększam niewłaściwą liczbę. Zamiast zwiększać
Bundle version
, zwiększałemBundleversions, string, short
w Info.plist. Wyszukaj „CFBundleVersion” w swoim projekcie za pomocą CMD + Shift + F. Zobaczysz, że musisz zwiększyć numer CFBundleVersion.źródło
Spróbuj zmienić wersję = „1.1.1.0” na wersję = „1.1.1”
źródło
Stan na koniec października Apple wymaga, aby numery wersji były mniejsze niż 4 cyfry (1.2.3 lub 1.23 w przeciwieństwie do 1.2.3.4 lub 1.234). Dotyczy to również bibliotek!
Szybkie sprawdzenie numeru wersji powodującej problem w katalogu projektu powinno spowodować włączenie biblioteki:
grep -r "1.2.3.4" .
źródło
Miałem aktywną wersję beta TestFlight. Kompilacja 2020 , wersja 407
Przesłałem aplikację do oficjalnego przeglądu w App Store. Build 2020 , wersja 435 i została zatwierdzona. Po prostu tam siedzi i czeka, aż wprowadzę go na żywo do App Store.
Nie dodając skomplikowanej historii pobocznej, chciałem dać moim użytkownikom TestFlight beta zaktualizowaną wersję, aby przez kilka dni przejrzeć oficjalną wersję App Store przed udostępnieniem wersji App Store. Dlaczego pytasz? Ponieważ otrzymywali darmowe funkcje, wkrótce będzie to kosztować pieniądze, gdy aplikacja zostanie uruchomiona.
Tak więc przesłałem Build 2020 , wersję 436, do TestFlight i został on odrzucony.
Został odrzucony, ponieważ mam zatwierdzonego oficjalnego kandydata do App-Store z tym samym numerem kompilacji
Rozwiązanie: zmień numer kompilacji wersji TestFlight. Poddałem Zbuduj 20200 (dodałem dodatkowy zero) w wersji 436 do TestFlight i został zatwierdzony. Nie martw się, nadal możesz przesłać tę kompilację do tej samej grupy beta TestFlight, o ile nadal używasz tego samego BundleID.
źródło