2014-09-19 9 views
14

Voglio caricare la build con l'estensione della tastiera personalizzata su Itunes Connect Ma quando sto per caricarlo su Itunes Connect tramite il caricatore dell'applicazione la sua mostrarmi seguente erroreERRORE ITMS-9000: "Architettura non valida: le app che includono un'estensione per app e un framework devono supportare arm64

ERROR ITMS-9000: "Invalid architecture: Apps that include an app extension and a framework must support arm64 

ho aggiunto l'architettura valido "ARMv7", armv7s, arm64 in target estensione di tastiera e di destinazione app come well.but sto ancora affrontando lo stesso problema

enter image description here enter image description here

+0

Sto utilizzando un framework dinamico e ottengo lo stesso errore quando si invia all'AppStore. Il target dell'app e il target framework (come nell'immagine) supportano correttamente arm64. Hai trovato una soluzione? – jollyr0ger

+0

Qualche soluzione? Sto affrontando lo stesso numero –

risposta

6

Si prega di controllare le strutture incorporate, se presenti. Ho affrontato lo stesso problema e il motivo era: Durante il debug di app sul dispositivo, Xcode crea framework per "solo arco corrente". E poi, anche se provi ad archiviare un progetto, Xcode usa già costruito per un solo (!) Framework d'arco dalla cartella debug-iphoneos.

Quindi, ho risolto questo problema impostando il flag "Build for current architecture only" su "No" nelle impostazioni di Build di framework target, pulizia della cartella di build (opzione di modifica Kd K), Archive.

1

Mi sono imbattuto in questo problema in Xcode 6.1. Sono stato in grado di risolverlo chiudendo Xcode, cancellando la cartella Derived Data, ricostruendo tutto, quindi archiviando di nuovo.

È necessario disporre di "Build for current architecture only" impostato su "No" nella destinazione principale e di eventuali destinazioni incluse per la configurazione di build che si sta attualmente archiviando.

6

Il mio problema era che avevo il mio iPhone 6 collegato a Xcode, quindi tutti i framework rapidi hanno solo sviluppato la versione di ARM64.

Ho disconnesso il mio iPhone 6 e selezionato il dispositivo iOS come destinazione.

Successivamente l'errore è scomparso.

Un'altra cosa che si potrebbe fare è controllare se l'archivio creato è davvero per tutte le architetture richieste.

È possibile controllare la i file binari nel vostro archivio con il comando di comando:

lipo -info YourBinary 

L'output dovrebbe apparire qualcosa di simile:

Architectures in the fat file: YourBinary are: armv7 arm64 
+0

Appena disconnesso il dispositivo e la convalida è stata approvata. Grazie! Sicuramente alcuni affari funky con ancora librerie rapide. – WCByrne

+0

E poi l'invio non è riuscito .... Ha fatto un pulito, impostato 'Costruisci solo l'architettura attiva 'su falso per l'app e la libreria per assicurarti di ricostruire tutto. Archiviato e inviato e tutto andava bene. Finalmente un po 'di sonno! – WCByrne

+0

Uomo hai salvato la mia giornata! – AsTeR

0

Assicuratevi di avere la vostra destinazione impostata Generico dispositivo iOS per il framework.

È possibile farlo andando su Prodotto-> Destinazione-> Dispositivo iOS generico.

Altrimenti lo costruisce in modo specifico per quel dispositivo e solo per la sua architettura.