Usa Xcode 7 con iOS 10


138

Voglio usare Xcode 7 con iOS 10.

A quanto ho capito, lavorare con iOS 10 beta richiede Xcode 8 beta, quindi dovrei aggiornare il mio Xcode. Tuttavia, il mio codice non può essere creato dal nuovo compilatore, quindi voglio rimanere con Xcode 7.

Come posso raggiungerlo?


2
Ti preghiamo di considerare di riscrivere la tua domanda come minima, completa e verificabile
Katya Handler,

4
@ParagBafna: ma obiett-c e swift sono linguaggi di programmazione! Il che rende Xcode uno strumento utilizzato principalmente per la programmazione . Questa domanda non avrebbe mai dovuto essere chiusa.
tharkay

C'è una domanda doppia con risposta con immagini del disco pronte, quindi non è necessario installare un Xcode più recente: stackoverflow.com/a/39865199/286361
Vladimir,

Risposte:


197

È necessario utilizzare DeveloperDiskImage da Xcode 8 Beta. Per estrarre l'app Xcode 8 Beta e copiare DeveloperDiskImage per iOS 10 nella cartella Xcode.

Supponiamo di estrarre Xcode in Download / Xcode-beta.app

cp -r /Users/fanruten/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0\ \(14A345\) /Applications/Xcode_7.2.1.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

Dopo aver copiato DeveloperDiskImage dovresti avviare Xcode e connettere il dispositivo iOS al tuo mac.

Modifica:
con un'installazione Xcode standard è possibile creare un collegamento software:

sudo ln -s \
/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0\ \(14A5309d\) \
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0

Se questo non funziona per te, è semplicemente perché non esiste Xcode_7.2.1.app è solo Xcode.app, grazie per questo!
Markus,

4
Questo non sembra funzionare con iOS 10 beta 2. Con errori kAMDMobileImageMounterDeviceLocked. Non ho ancora trovato una soluzione alternativa.
Jonathan Mitchem,

2
Funziona per me con
beta3

1
Qualcuno ha fortuna con la beta 6?
mlevi,

4
Se questa risposta non funziona per te, controlla per accertarti che la stringa finale della cartella di supporto del dispositivo es. (14A5309d) corrisponde alla versione sul tuo dispositivo iOS. Indica il seme beta. In caso contrario, aggiorna il tuo Xcode in modo che corrisponda al seme del tuo dispositivo iOS, quindi segui la risposta sopra.
Monaco Hunter

70

Puoi utilizzare qualsiasi SDK su una build precedente di Xcode semplicemente copiando e incollando la cartella del sistema operativo che ti serve. Inoltre ovviamente non puoi avere due app con lo stesso nome, quindi rinominale in Xcode 7 e Xcode 8.

fare clic con il tasto destro / ctrl-clic sull'icona dell'applicazione Xcode 8 per mostrare il contenuto del pacchetto e navigare in questa posizione e copiare la cartella iOS 10.0 o WatchOS 3.0 ecc.

/Applications/Xcode8.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport /Applications/Xcode8.app/Contents/Developer/Platforms/WatchOS.platform/DeviceSupport

inserisci qui la descrizione dell'immagine

Quindi navigare nella stessa posizione in Xcode 7 e incollare la cartella.

/Applications/Xcode7.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport /Applications/Xcode7.app/Contents/Developer/Platforms/WatchOS.platform/DeviceSupport

inserisci qui la descrizione dell'immagine

Riavvia Xcode 7. Dovrai aspettare un po 'che Xcode ricostruisca i simboli ecc.


2
Proprio come una nota a margine, l'elaborazione dei file dei simboli potrebbe richiedere alcuni minuti. Sono l'ultimo e il più grande MacBook Pro e ci vuole un po 'di tempo. Ho dovuto scollegare il telefono dopo averlo collegato per la prima volta a X / b Xcode erroneamente detto che era bloccato. Dopodiché ha funzionato alla grande, ma ci è voluto del tempo per elaborare i file.
kbpontius,

Sì, ne ho parlato nel mio post. Saluti.
Edison,

Dobbiamo supportare iOS 6 e 7, quindi ho usato la tecnica sopra per aggiungere il supporto 6.0, 6.1, 7.0 e 7.1 a Xcode 8.
iCyberPaul,

Bella risposta @tymac - Ho seguito i tuoi passaggi, ma non riesco a vedere iOS 10 nel Target di distribuzione. Qualche idea?
Tal Sion,

@TalZion Non visualizzi la versione nel menu a discesa perché devi assicurarti che la versione di Xcode che stai utilizzando sia compatibile con la versione sul tuo dispositivo. Questo è un problema di immagine del disco sim.
Edison,

25

Per me nessuno dei suggerimenti di cui sopra ha funzionato.

Invece, sono passato a questa posizione (premi CMD + MAIUSC + K per inserire il percorso seguente) (tramite finder)

/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

E copiato la 10.0(14A5339a)cartella, che contiene l'immagine del disco dello sviluppatore. L'ho incollato in

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

EDIT: sto usando Xcode7 (versione 7.3.1-7D1014), iOS 10 public beta 6 (14A5345a) -questo è stato rilasciato il 19 agosto 2016


Bello! Quali versioni di Xcode stai usando? Sembra che tu stia utilizzando sia Xcode che Xcode beta - potresti aggiungere una versione per entrambi?
Cullub,

1
questa soluzione ha funzionato per me! ho dovuto tornare a xcode 7.3.1 per lavorare su un vecchio progetto bloccato su swift 2.x <2.3 (a causa di dipendenze da librerie di terze parti che non sono compatibili con le versioni più veloci di swift), e ora posso costruire sul mio iPhone su iOS 10.2, grazie !!
serra

2

Sebbene la copia della cartella contenente l'immagine del disco sia ancora il modo migliore per procedere, non ho avuto il tempo di scaricare l'Xcode più recente per ottenere la cartella dell'immagine del disco, quindi ho sostanzialmente archiviato l'app ed esportata utilizzando l'opzione di distribuzione di salvataggio per lo sviluppo, quindi installato sul dispositivo di test utilizzando l'app iTunes.

Nel mio caso, odio Xcode 8.0 che vuole costruire su un dispositivo iOS 10.2.1.

inserisci qui la descrizione dell'immagine


1

Pascal && Fanruten hanno ragione.

testato il 12 agosto, Xcode versione 7.3.1 (7D1014) E iOS 10.0 (14A5309d) su iPhone6 ​​Plus.

Ho creato un collegamento simbolico come suggerito (il percorso è un po 'diverso ... vedi sotto.) Ma funziona con il collegamento a Xcode Versione 8.0 beta 4 (8S188o).

solo per completezza:

Beta 4

sudo ln -s /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0\ \(14A5322e\)/  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0

Beta 5

sudo ln -s /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0\ \(14A5339a\)/  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0

Per collegamento simbolico Da XCode 8 Beta 5 a Xcode 7:sudo ln -s /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0\ \(14A5335a\)/ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/10.0
cdf1982

0

La risposta di Tymac ha quasi funzionato per me. Invece di copiare e incollare, ho aperto due finestre del Finder e trascinato la cartella iOS 10 nella cartella Xcode 7. Una volta che è in Xcode 7, apri la cartella e assicurati che ci sia un file dmg.

In precedenza avevo trascinato una copia della cartella di supporto del dispositivo iOS 10 sul desktop e l'ho copiata nella cartella Xcode 7. Ciò sembrava decomprimere il file dmg, quindi Xcode 7 si è ancora lamentato. Deve essere un file dmg nella cartella.


0

Un avvertimento. Ho provato a utilizzare XCode 7.3.1 con immagini iOS 10 da XCode 8.1 per il progetto Cordova (funziona), ma ho avuto problemi con le autorizzazioni di notifica push (impostazioni diverse per iOS 8/9/10). Non ne sono sicuro, ma mi sembra che alcune direttive del compilatore siano mancanti in 7.3.1


0

Ecco per XCode 9 e iOS 11 Beta 1:

sudo ln -s \
/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/11.0\ \(15A5278f\) \
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/11.0

Funziona davvero per te? Non riesco ad aggiungere un simulatore iOS 11 in Xcode 8.
Ortwin Gentz,

@OrtwinGentz ​​Vedi se riesci ad avviare il simulatore in Xcode 9 - se funziona, dovresti essere in grado di chiudere Xcode 9 ed eseguire il debug della tua app sul simulatore da XC 8.
Bryan,

Posso avviare Simulator in Xcode 9, certo. Ma non riesco a compilare con Xcode 8 (contro l'SDK di iOS 10) e il debug sul simulatore iOS 11.
Ortwin Gentz,

questo metodo funzionerà su dispositivi Xcode 7.3 e iOS 11?
DHEERAJ,

-1

i miei due centesimi per Xcode versione 11 beta contro Xcode 10 dopo wwdc2019:

ln -s /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/13.0 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/13.0

così posso usare il mio iPhone con iOS 13 beta in Xcode 10.

dopo ln -s, riavviare Xcode

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.