Pobrałem Xcode 6 GM i przesłałem dziś dwie aplikacje Swift do App Store. Obaj przeszli wszystkie weryfikacje przed przesłaniem i wszystkie inne rzeczy, które musieli przejść i pomyślnie przesłano. Ale potem dostałem dwa e-maile od Apple ... jeden dla każdego programu i obaj powiedzieli tak:
Drogi deweloperze,
Wykryliśmy co najmniej jeden problem z Twoją ostatnią dostawą dla „xxxxxxxx” (nazwa mojej aplikacji została usunięta). Twoja dostawa zakończyła się powodzeniem, ale możesz chcieć rozwiązać następujące problemy przy następnej dostawie:
Zbyt wiele plików symboli - te symbole nie mają odpowiadającego wycinka w żadnym binarnym [1431D977-72BC-308F-AB71-71529F25400B.symbols, 158C72A7-98AC-3F07-B2BE-88427591B413.symbols, 44973EAC-563E-340C-B549-55A5014A68BA , 678BF06F-0C3D-3A09-BFBF-699C7079FECD.symbols, 90907DDB-0400-38ED-BB5F-0C12333C0624.symbol, 93B79949-5757-374A-97B9-825AE1A61B7D. -4422-32B8-8C40-CF9B45A2CCC6.symbols, B0CC9F7D-C542-3E18-A518-B28B7ECABE80.symbols, BF6A4C3B-6FA5-3C51-8404-19C2F132458D. Symbole -3845-BAD5-F6E51045D396.symbols, D4967AA3-8FB0-3712-B0DE-7F4144AF8F4B.symbols, D813B314-AD37-31D4-B675-442052994495.symbols, DF42A13F-B08-038 FF-B08-038 FF-B08-038 FF-08D8-350 FB B08 -8F7D-C49A36CD5C65.symbols]
Po rozwiązaniu problemów możesz użyć Xcode lub modułu ładującego aplikacje, aby przesłać nowy plik binarny do iTunes Connect.
Pozdrowienia,
Zespół App Store
Zgaduję, że to naprawdę nie ma nic wspólnego ze mną ani z moimi aplikacjami ... a to tylko dziwactwo pierwszego dnia składania aplikacji Swift? Obie aplikacje nadal siedzą w trybie „Oczekiwanie na zatwierdzenie”. Z pewnością nie mogę wymyślić niczego, co mógłbym zmienić, aby to, co powiedzieli, zniknęło! Czy ktoś jeszcze przesłał aplikację Swift i otrzymał tę odpowiedź? Myślisz, że powinienem to zignorować i poczekać, aby zobaczyć, co się stanie?
źródło
Invalid Swift Support
. Masz pomysł, dlaczego mogę to dostać? Używam najnowszego Xcode.Odpowiedzi:
Dzieje się tak, jeśli dołączasz informacje o debugowaniu bibliotek do archiwum projektu, ale nie zawierasz plików binarnych.
W folderze „dSYMs” zobaczysz kilka plików. Jeśli uruchomisz
dwarfdump
polecenie konsoli na tych plikach, otrzymasz listę ciągów UUID:Jestem pewien, że znajdziesz kilka pasujących UUID z e-maila Apple.
Aby uniknąć tego ostrzeżenia, musisz dołączyć do archiwum tylko
dSYM
pliki aplikacji, a nie biblioteki. W tym celu należy zmienić konfigurację kompilacji bibliotek, aby nie generowaćdSYM
pliku. Po prostu wyszukaj w konfiguracji „format informacji debugowania” i zmień go tylko zDWARF with dSYM File
naDWARF
.Na przykład na poniższym zrzucie ekranu znajdziesz szkielet Stripe iOS.
źródło
dwarfdump -u *
w folderze, aby zobaczyć wszystkie UUIDJeśli napotkałeś ten problem podczas korzystania z CocoaPods, dodaj to do swojego Podfile:
Ustawi format informacji debugowania na DWARF tylko dla wszystkich celów Pod (nie główny cel aplikacji)
źródło
pod install
Jeśli korzystasz z CocoaPods, a Twoja aplikacja jest skonfigurowana do korzystania tylko z arm64 (tzn. W info.plist twojego projektu jest tylko arm64)
następnie możesz spróbować dodać następujący skrypt do pliku Podfile, aby rozwiązać ten problem.
I
ustaw wszystkie cele swoich projektów (nie cele w kapsułach) tylko na arm64
Referencje wydania CocoaPods Github
źródło
Mam ten problem, ponieważ projekt ma poprawną architekturę arm64, w której cele CocoaPods mają prawidłową architekturę arm64, armv7 i armv7s .
Aby sprawdzić, który cel ma prawidłową architekturę, wykonaj następujące kroki
Otwórz terminal i podaj ścieżkę do folderu dSYMs .
Wpisz polecenie
dwarfdump --uuid *
, aby wyświetlić listę UUID z poprawnymi architekturami.Identyfikator UUID będzie zgodny z e-mailem ostrzegawczym Apple
Główny projekt i cel strąków kakaowych mają mieć taką samą prawidłową architekturę. W ten sposób rozwiąże problem.
źródło
Pracowałem dla mnie, włączając kod bitowy - wcześniej był wyłączony
Włącz kod bitowy - tak
źródło
Powyższe pomogło rozwiązać problemy, ale nie udało się rozwiązać. Mieliśmy projekt na iOS 12, ale strąki 10 - doprowadziły do wielu plików armv7. Aktualizacja kapsuły do iOS 12 rozwiązana natychmiast.
źródło
Gdyby ten sam problem został naprawiony, posiadając takie same „Ogólne” => „Informacje o wdrożeniu” => „Cel wdrożenia” dla wszystkich moich celów.
źródło
Upewnij się, że zaznaczyłeś tę opcję w Ustawieniach kompilacji projektu
https://possiblemobile.com/2015/03/symbolicating-your-ios-crash-reports/
źródło
Problemem była linia w moim
build.xcconfig
pliku. Musiałem usunąćktóry ustawiał projekt do budowania tylko dla arm64 (a nie arm7). Podążając za krokami
@miOS
, zauważyłem, że projekt strąków buduje się dla obu.źródło
Dla mnie wszystko było bardzo proste. Miałem ten sam problem i nie wiedziałem, co robić przez tydzień.
Po przesłaniu zarchiwizowanej aplikacji zobaczysz certyfikat do dystrybucji w małym wyskakującym oknie. Po nim znajduje się pole wyboru, które należy odznaczyć. Następnie prześlesz go i otrzymasz e-mail o plikach symboli. Ale to nie jest problem. To tylko ostrzeżenie; nie błąd! Jeśli usuniesz zaznaczenie tego pola wyboru, aplikacja zostanie wysłana poprawnie. Mam nadzieję, że może ci to pomóc.
Zrzut ekranu pola wyboru i wyskakującego okienka:
źródło