2012-01-02 16 views
10

Quando ho creato il mio progetto, l'ho realizzato per supportare ARC, quindi il mio progetto supporterà iOS 4.3 e versioni successive.Utilizzo di codice non ARC in un progetto abilitato ARC - Aggiunta di Facebook

Ora ho bisogno di integrare Twitter e Facebook. Entrambi i framework Facebook e Twitter forniti dalle aziende non supportano ARC.

La maggior parte dei file ha dealloc e ha rilasciato le sue variabili. Alcuni dicono di demolire il progetto e di ripristinarlo disabilitando ARC. Ma non posso permettermi di farlo, dato che ho fatto la maggior parte delle cose.

Ho aggiunto i file FBConnect (ce n'erano 4) e aggiunto -fno-objc-arc come descritto in this tutorial. Ancora ottengo

file://localhost/Users/illepmorgan/Documents/Projects/illep/untitled%20folder/alphaproject/alphaproject/FBRequest.m: error: Automatic Reference Counting Issue: Existing ivar '_delegate' for unsafe_unretained property 'delegate' must be __unsafe_unretained 

Ho bisogno di aiuto, non posso rifarlo di nuovo.

+0

Sei sicuro di aver seguito correttamente la guida? Controlla di aver aggiunto il flag a tutti i file. – Emil

+0

Sì, l'ho fatto. Ho provato tutto da capo. e ricevo quel messaggio che ho aggiunto sopra. – Illep

+0

Qualcuno sa come risolvere questo? – Illep

risposta

20

Assicurarsi di aver aggiunto il flag -fno-objc-arc a ciascun file di implementazione (file .m).

E quindi pulire il progetto (menu Progetto -> pulito) e ricostruire. A volte ho dovuto pulire e costruire due volte mentre lo facevo in classe. Sembra un piccolo insetto.

+0

Dovrai anche aggiungere i file JSON (che si trovano in una cartella). Quindi devo aggiungere anche il flag per questi file? I file JSON non sono stati identificati nel 'target' per aggiungere il flag. Cosa dovrei fare ora ? – Illep

+0

I file JSON non sono codice obiettivo-c e non verranno compilati, quindi questo flag non si applica. –

+0

beh, 'FBConnect' il framework di Facebook ha una cartella' JSON' e quando guardi dentro troverai un sacco di codice 'Objective-C'. Quindi devo "flag" anche loro? – Illep

Problemi correlati