Di recente ho scaricato Xcode 4.2 con il pacchetto SDK di iOS 5 e ho subito notato che non sono in grado di utilizzare il mio iPhone 3G con iOS 4.2.1 per il debug. Sono in grado di eseguire il debug e il test solo sul mio iPhone 4 con iOS 5 installato.
Per tutti i miei dispositivi con iOS inferiore a 5.0 Xcode dice semplicemente "Finished running for iPhone3GS" e non lo esegue. Il mio obiettivo di distribuzione è impostato su 3.0 perché non utilizzo alcuna funzionalità nella mia app superiore a 3.0 e desidero essere in grado di indirizzare tutte le versioni 3.0 o successive. Ho tutti i miei profili di provisioning installati e aggiornati.
Ho chiuso e riavviato xcode, ho pulito la build più volte. Ho provato ad aggiungere armv6 nelle impostazioni di build dell'architettura, ma niente mi permetterà di creare ed eseguire la mia app sul mio vecchio telefono con iOS 4.2.1.
La mia domanda è: è possibile continuare a far funzionare le app con il nuovo SDK per versioni iOS inferiori a 5? Come posso essere sicuro che la mia app continuerà a funzionare su versioni iOS precedenti se non sono in grado di installarle sul mio vecchio telefono?
Modifica: OK, sembra che iOS SDK 5 abbia abbandonato il supporto per armv6 per impostazione predefinita. Quello che devi fare è aggiungere armv6 nel campo Architectures in Build Settings sia per il tuo Target che per il tuo Progetto. Quindi la tua app sarà in grado di funzionare su dispositivi iPhone 3G. La risposta può essere trovata qui Come costruire per architetture armv6 e armv7 con iOS 5
iOS
versioni. Inoltre, aggiungi la modifica come risposta in modo da poter accettare la soluzione trovata e questa domanda può essere contrassegnata come risposta.