2016-05-27 53 views
13

Ieri ho iniziato a ottenere il messaggio di errore strano da iTunes Connect:ITMS-90668 - Eseguibile Bundle non valido. Il file eseguibile contiene codice binario che incompleta

ITMS-90668 
Invalid Bundle Executable. 
The executable file '...' contains incomplete bitcode. 
To compile binaries with complete bitcode, open Xcode and choose Archive in the Product menu. 

In realtà, io sto ottenendo molti messaggi identici per ciascuno dei miei quadri embedded.

Uso Bitcode e non ho modificato alcun codice Bitcode correlato nel mio progetto. Sembra un nuovo requisito ITMS (o bug). E non ho idea di come aggiustarlo.

Sembra che questo problema sia misteriosamente correlato a strumenti CI come Shenzhen o BuddyBuild. O, forse, è legato ai casi in cui le dipendenze contengono codice precompilato.

Solo nel caso, la mia app:

  • ha queste dipendenze che sono precompilati codice: BuddyBuildSDK, Firebase, CARDIO.
  • Scritto in Swift.
  • Ha l'estensione per la tastiera iOS.
  • Usa BuddyBuild.
  • Usa CocoaPods.

Aggiornamento:

mi aveva cambiato praticamente nulla e quindi il problema è scomparso ieri. Non ho idea del perché esattamente. Credo che Apple abbia corretto quell'errore o che si tratti di un problema con il raffreddore.

+0

Lo stesso qui, è venuto all'improvviso dal nulla. Ho provato a impostare il bitcode su SÌ e su NO entrambe le varianti: nessuna modifica. –

+0

Sto avendo lo stesso identico problema. Come stai inviando il tuo codice ad iTunes Connect? – BlackHatSamurai

+0

Ottenere lo stesso problema, penso che questo sia un bug di Apple. Qualche rapporto è stato fatto? –

risposta

3

Ho avuto lo stesso problema con alcune dipendenze pod. Ho modificato l'impostazione di build "Abilita codice bit" per ogni progetto di pod che ha causato il problema (seguendo le descrizioni degli errori di itunesconnect). Ora tutto funziona.

È possibile impostarlo nel Podfile. Ecco un esempio che cambia per ogni dipendenze:

post_install do |installer| 
    installer.pods_project.targets.each do |target| 
    target.build_configurations.each do |config| 
     config.build_settings['ENABLE_BITCODE'] = 'NO' 
    end 
    end 
end 

Trovato qui: Disable bitcode for project and cocoapods dependencies with Xcode7?

+0

Quindi, questo problema è legato al buddybuild ?! –

+0

Io non la penso così. Ho usato la descrizione dell'errore di nuovo da itunesConnect in buddybuild. Penso che Apple abbia cambiato le regole di convalida delle applicazioni. – Julien

+0

Ok, è una buona soluzione temporanea, ma voglio usare Bitcode, quindi ovviamente non voglio disabilitarlo. –