2016-09-06 19 views
7

Zbudowaliśmy aplikację Xamarin (iOS, Android) z kilkoma naturalnymi powiązaniami. Aplikacja działa dobrze na urządzeniu i symulatorze i jesteśmy w stanie zbudować archiwum bez żadnych problemów (podobno).ERROR ITMS-90085: "Brak architektury w pliku binarnym. Lipo nie wykrył żadnej architektury w pliku wykonywalnym pakietu. "

Problem jest, gdy chcemy wgrać build do sklepu z aplikacjami (przy użyciu ładowacza aplikacji lub Xcode 7.3.1) otrzymujemy następujący błąd:

ERROR ITMS-90085: “No architectures in the binary. Lipo failed to detect any architectures in the bundle executable.” 

Running lipo -info na aplikacji daje następującą odpowiedź:

Architectures in the fat file: NameOfMyApp.iOS.app/NameOfMyApp.iOS are: armv7 arm64

Szukaliśmy odpowiedzi na to pytanie przed wysłaniem dokładnie i zadbali o następujących czynności:

  • Nazwa produktu jest poprawna
  • Xcode jest zainstalowany
  • ładowania aplikacji jest najnowsza wersja
  • Bundle Id jest poprawna

Jeśli ktoś ma pomysł pomoc będzie bardzo mile widziane!

Dzięki A.

+0

Jest to bardzo prawdopodobne niedopasowanie nazwy w pliku info.plist lub w poprzednich opublikowanych kompilacjach w sklepie AppStore. Proszę dokładnie sprawdzić bezpośrednio w paczce informacyjnej ostatecznego pakietu aplikacji, aby sprawdzić, czy odzwierciedla on oczekiwaną wartość: – dalexsoto

+0

Dzięki @Mack, ale sprawdziliśmy wszystkie nazwiska i nie było niezgodności. Problemem była niepotrzebna struktura folderów w natywnym projekcie powiązania (zobacz moją odpowiedź). –

+0

@AnthonyJanssens ok, więc ostatecznie udało Ci się go rozwiązać. – Mayur

Odpowiedz

2

Tak więc okazuje się, że robiliśmy jakieś rodzime powiązania w naszym projekcie. W jednym z tych wiązań uwzględniliśmy framework w katalogu głównym projektu, który jest folderem zawierającym podfoldery zawierające bibliotekę lib.a. Okazuje się, że podczas kompilacji cała struktura folderów szkieletowych była kopiowana do wynikowego IPA i to było przyczyną problemu. Rozwiązaniem było po prostu wyodrębnienie biblioteki lib.a i przeniesienie jej do katalogu głównego projektu oraz usunięcie folderu frameworka. Wynikowy IPA nie posiadał już folderu ramowego, a jego przesłanie przebiegło bez zakłóceń.

+0

Lub po prostu usuń fazę kompilacji "Embedded Framework". Zobacz moją odpowiedź tutaj https://stackoverflow.com/a/48693391/140927 – Holtwick

Powiązane problemy