2012-09-20 17 views
13

Eventuali duplicati:
file is universal (3 slices) but does not contain a(n) armv7s slice error for static libraries on iOS, anyway to bypass?Facebook SDK per iOS6/Xcode 4.5 non funziona

Recentemente aggiornato dispositivi Xcode e le mie iOS alle ultime rispettive versioni e io sono ora in grado di costruire un'app che utilizza l'SDK di Facebook (versione 3.0.8) per un dispositivo: la creazione del simulatore funziona correttamente.

errore che sto ricevendo pur cercando di costruire:

file is universal (3 slices) but does not contain a(n) armv7s slice: ....FacebookSDK.framework/FacebookSDK for architecture armv7s 

ho notato che nella pagina di destinazione iOS SDK (http://developers.facebook.com/ios/) hanno questo pezzo di testo ..

aggiornamento a 3.0 SDK. Nelle prossime settimane aggiungeremo il supporto alla tanto attesa integrazione di iOS 6 con l'SDK.

Quindi .. è così? Non sono letteralmente in grado di continuare a lavorare per potenzialmente settimane finché non supportano iOS6?

Spero ci sia una soluzione rapida per questo, sicuramente non posso essere l'unico in questa situazione.

Grazie per l'aiuto che puoi offrire.

+0

http: // stackoverflow.it/questions/12402092/file-is-universal-3-slices-ma-does-not-contain-an-armv7s-slice-error-for-st – Shmidt

+0

Già visto e nessuno di questi suggerimenti funziona. Inoltre, non riuscirà a caricare quando si tratta di inviare l'app all'App Store? – user1168056

+0

questa soluzione funziona per me, spero che aiuta: [? File è universale (3 fette), ma non contiene una (n) armv7s fetta di errore per le librerie statiche su iOS, in ogni caso per bypassare] [1] [1]: http://stackoverflow.com/a/12402966/1210822 – sonoshin

risposta

8

Fai clic sul tuo progetto Xcode -> nella scheda Architects -> Architects validi -> mantieni solo armv7 e rimuovi armv7s. Nel mio caso funziona bene, questa è solo una soluzione temporanea.

+0

Sì, è tutto quello che posso trovare in questo momento .. soluzioni temporanee. Sono certo che queste correzioni temporanee falliranno nell'invio di App Store .. lo scopriremo presto. – user1168056

15

Per una correzione temporanea puoi fare ciò che Sudhakar ha detto, ma l'app non funzionerà su un iPhone 5, (o almeno con i miei test non ha funzionato). Hai davvero bisogno di un SDK compilato correttamente.

L'attuale SDK di Facebook è stato creato per armv6. Ho sentito che stanno lavorando per ottenere una nuova versione appena possibile che sia stata creata per armv7.

Nel frattempo è possibile clonare l'SDK di Facebook da github e compilare l'SDK per lavorare con armv7. Di seguito sono elencate le istruzioni:

  1. Download o clonare una copia del codice sorgente dalla pagina hub git (https://github.com/facebook/facebook-ios-sdk)
  2. aprire il progetto Xcode e nelle impostazioni di compilazione cambia l'architettura in armv7.
  3. Salva e chiudi
  4. Spostarsi/script e nel terminale build_all.sh corsa

Questo sarà quindi compilare il sorgente e l'output costruisce/FacebookSDK.framework Per arrivare a questo lavoro ho dovuto clonare il git repository to/Desktop/iOS Ho sostituito il file FacebookSDK.framework che era nella mia app con la versione appena creata e ha funzionato come un fascino.

buona fortuna!

+1

Ottima risposta, sono un grande fan :) – Jef

+1

Non compilare per armv7s non dovrebbe significare che l'app non possa funzionare su iPhone 5 - se così fosse, allora vecchie app create con versioni Xcode precedenti alla 4.5 (cioè la maggior parte delle app attualmente su App Store) non sarebbe in grado di funzionare su iPhone 5, e puoi verificare facilmente che possano farlo. iPhone 5 è ovviamente retrocompatibile con armv7 - la compilazione per armv7s consente solo ulteriori ottimizzazioni di compilazione che non erano disponibili in armv7. –

Problemi correlati