Właśnie ponownie napisałem aplikację w Swift 2. Próbuję przesłać aplikację do iTunesConnect (przez Xcode 7 GM) do testów wewnętrznych.
Przez jakiś czas zmagałem się z błędem „Invalid Swift Support” ( który ma inne, powiązane pytania ) ... ale teraz zmieniło się na coś nieco innego.
Błąd od Apple mówi teraz:
Nieprawidłowa pomoc techniczna Swift
Pliki libswiftCoreLocation.dylib, libswiftCoreMedia.dylib, libswiftCoreData.dylib, libswiftAVFoundation.dylib nie pasują
/Payload/App.app/Frameworks/libswiftCoreLocation.dylib, /Payload/App.app/Frameworks/libswiftCoreMedia.dylib, /Payload/App.app/Frameworks/libswiftCoreData.dylib, /Payload/App.app/wrameworks/liift/App.app/wrameworks/libswiftCoreData.dylib. dylib
Upewnij się, że pliki są poprawne (?), Odbuduj aplikację i prześlij ją ponownie.
Nie stosuj przetwarzania końcowego do
/Payload/App.app/Frameworks/libswiftCoreLocation.dylib, /Payload/App.app/Frameworks/libswiftCoreMedia.dylib, /Payload/App.app/Frameworks/libswiftCoreData.dylib, /Payload/App.app/wrameworks/liift/App.app/wrameworks dylib.
Nie udało mi się znaleźć podobnych błędów, wyszukując „Nie stosuj przetwarzania końcowego”, „Upewnij się, że pliki są poprawne, odbuduj aplikację i prześlij ją ponownie” itp.
Czy ktoś wie, jak mogę „Upewnić się, że pliki są poprawne” - lub - ma jakieś inne zalecenia? Dziękuję Ci.
Odpowiedzi:
Mam ten sam problem. Myślę, że jest to najprawdopodobniej błąd narzędzi deweloperskich związany z Bitcode.
Właśnie znalazłem obejście tego problemu.
Products/Applications/YourApp.ipa/Frameworks/
iSwiftSupport/iphoneos/
libswiftXxx.dylib
pliki zSwiftSupport/iphoneos/
doProducts/Applications/YourApp.ipa/Frameworks/
i nadpiszDzięki temu procesowi udało mi się przesłać moją kompilację. Teraz czekam na recenzję.
UWAGA:
Używam CocoaPods, a
ENABLE_BITCODE
opcja była NIE.źródło
Processing
po ~ 12 godzinach w sekcji Prerelease w iTunes Connect.Edycja: wydano CocoaPods 0.39.0 , które rozwiązuje ten problem!
Jak wspomniał @orkenstein , istnieje prostsze rozwiązanie polegające na zakomentowaniu części kodu w
Pod-frameworks.sh
. Podaję tutaj nieco więcej szczegółów.W katalogu projektu Xcode otwórz
Pods/Target Support Files/Pods/Pods-frameworks.sh
Skomentuj następujące wiersze:
=>
Zapisz
Pods-frameworks.sh
i powinieneś być gotowy!źródło
Poprawka dotycząca tego problemu została scalona i jest dostępna w najnowszej wersji CocoaPods
0.39.0.beta.5
https://github.com/CocoaPods/CocoaPods/pull/4268
Aby uzyskać najnowszą wersję uruchom CocoaPods
gem install cocoapods --pre
Ewentualnie postępuj zgodnie z instrukcjami dotyczącymi uruchamiania niewydanych funkcji: http://guides.cocoapods.org/using/unreleased-features
Gdy będziesz mieć najnowszą wersję CocoaPods, uruchom
pod install
ponownie.źródło
Używałem Fastlane Gym 1.9.0 do budowania mojej aplikacji i Apple ciągle ją odrzucało, ponieważ pliki nie pasowały, podczas gdy jeśli przesłałem przez XCode 8, zostało to zaakceptowane. Sprawdziłem swift libs w folderze swift support w ipa iw folderze Frameworks, stwierdziłem, że biblioteki w folderze swift support były dla swift 2.3, podczas gdy w folderze Frameworks było to szybkie 3. Więc w moim pliku gym dodałem toolchain opcja:
* Zauważ, że musiałem zmienić use_legacy_build_api na false, aby użyć opcji toolchain
źródło
Jest trochę mniej złożone rozwiązanie, które można znaleźć na GitHub :
źródło
sudo gem install cocoapods
terminal.pod update
w katalogu twojego projektu.Debug
opcji dla wszystkich .Problem został rozwiązany, ponieważ następujący kod w
Pods-frameworks.sh
:został zmieniony na:
źródło
Moje rozwiązanie na to:
Używam Reveal through Cocoapods i Reveal musi wyłączyć Bitcode. Więc dołączyłem Reveal (powinien działać dla każdego innego Framwork) tylko do debugowania:
Ponieważ moje ujawnienie jest teraz skonfigurowane tylko do debugowania, wyłączyłem Bitcode tylko do debugowania.
Z tymi ustawieniami wszystko działa dobrze, bez żadnych hacków ...
źródło
Widziałem ten błąd podczas integracji bibliotek, które nie obsługują kodu bitowego (na przykład aktualna stabilna wersja New Relic). Rozwiązaniem jest albo usunięcie bibliotek, wyłączenie kodu bitowego (i potencjalnie niemożność przesłania do sklepu) lub oczekiwanie na zaktualizowane pliki bitcode, które obsługują bitcode od dostawcy biblioteki.
źródło
Błąd polegał na tym, że utworzyłem profil Adhoc zamiast profilu App Store w celu przesłania spa do sklepu z aplikacjami.
źródło