Verwenden Sie Xcode 7 mit iOS 10

138

Ich möchte Xcode 7 mit iOS 10 verwenden.

Soweit ich weiß, erfordert die Arbeit mit iOS 10 Beta Xcode 8 Beta, daher sollte ich meinen Xcode aktualisieren. Mein Code kann jedoch nicht vom neuen Compiler erstellt werden, daher möchte ich bei Xcode 7 bleiben.

Wie kann ich das erreichen?

Fanruten
quelle
2
Bitte erwägen Sie, Ihre Frage so zu schreiben, dass sie minimal, vollständig und überprüfbar ist
Katya Handler
4
@ParagBafna: aber Objective-C und Swift sind Programmiersprachen! Das macht Xcode zu einem Werkzeug, das hauptsächlich für die Programmierung verwendet wird . Diese Frage hätte niemals geschlossen werden dürfen.
Tharkay
Es gibt eine doppelte Frage, die mit fertigen Disk-Images beantwortet wurde, sodass Sie keinen neueren Xcode installieren müssen: stackoverflow.com/a/39865199/286361
Vladimir

Antworten:

197

Sie müssen DeveloperDiskImage von Xcode 8 Beta verwenden. Extrahieren Sie für diesen Xcode 8 Beta-App und kopieren Sie DeveloperDiskImage für iOS 10 in Ihren Xcode-Ordner.

Angenommen, Sie extrahieren Xcode in Downloads / 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

Nach dem Kopieren von DeveloperDiskImage sollten Sie Xcode starten und das iOS-Gerät mit Ihrem Mac verbinden.

Bearbeiten:
Mit einer Standard-Xcode-Installation kann ein Softlink erstellt werden:

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
Fanruten
quelle
Wenn dies bei Ihnen nicht funktioniert, liegt es einfach daran, dass es keine Xcode_7.2.1.app gibt. Es ist nur Xcode.app. Vielen Dank dafür!
Markus
4
Dies scheint nicht mit iOS 10 Beta 2 zu funktionieren. Es ist ein Fehler mit kAMDMobileImageMounterDeviceLocked. Ich habe noch keine Problemumgehung gefunden.
Jonathan Mitchem
2
Funktioniert für mich mit Beta3
mbo42
1
Hat jemand Glück mit Beta 6?
Mlevi
4
Wenn diese Antwort bei Ihnen nicht funktioniert, überprüfen Sie, ob die Endzeichenfolge Ihres Geräteunterstützungsordners ex. (14A5309d) entspricht der Version auf Ihrem iOS-Gerät. Es bezeichnet den Beta-Samen. Wenn dies nicht der Fall ist, aktualisieren Sie Ihren Xcode so, dass er mit dem Startwert Ihres iOS-Geräts übereinstimmt, und folgen Sie dann der obigen Antwort.
Hunter Monk
70

Sie können jedes SDK in einem älteren Xcode-Build verwenden, indem Sie einfach den Ordner des gewünschten Betriebssystems kopieren und einfügen. Sie können natürlich auch nicht zwei Apps mit demselben Namen haben, also benennen Sie sie einfach in Xcode 7 und Xcode 8 um.

Klicken Sie mit der rechten Maustaste / Strg-Taste auf das Xcode 8-Anwendungssymbol, um den Paketinhalt anzuzeigen. Navigieren Sie zu diesem Speicherort und kopieren Sie den Ordner iOS 10.0 oder WatchOS 3.0 usw.

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

Geben Sie hier die Bildbeschreibung ein

Navigieren Sie dann in Xcode 7 zum selben Speicherort und fügen Sie den Ordner ein.

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

Geben Sie hier die Bildbeschreibung ein

Starten Sie Xcode 7 neu. Sie müssen eine Weile warten, bis Xcode die Symbole usw. neu erstellt hat.

Edison
quelle
2
Nur als Randnotiz kann die Verarbeitung von Symboldateien einige Minuten dauern. Ich bin auf dem neuesten und besten MacBook Pro und es dauert eine Weile. Ich musste das Telefon ausstecken, nachdem ich es zum ersten Mal an b / c angeschlossen hatte. Xcode sagte fälschlicherweise, es sei gesperrt. Danach hat es super funktioniert, aber es hat eine Weile gedauert, bis die Dateien verarbeitet waren.
Kbpontius
Ja, das habe ich in meinem Beitrag erwähnt. Prost.
Edison
Wir müssen iOS 6 und 7 unterstützen, daher habe ich die obige Technik verwendet, um Xcode 8 um 6.0, 6.1, 7.0 und 7.1 zu erweitern.
iCyberPaul
Schöne Antwort @tymac - Ich habe Ihre Schritte befolgt, kann iOS 10 jedoch nicht im Bereitstellungsziel sehen. Irgendeine Idee?
Tal Zion
@TalZion Die Version wird im Pulldown nicht angezeigt, da Sie sicherstellen müssen, dass die von Ihnen verwendete Xcode-Version mit der Version auf Ihrem Gerät kompatibel ist. Dies ist ein Problem mit dem SIM-Disk-Image.
Edison
25

Für mich hat keiner der oben genannten Vorschläge funktioniert.

Stattdessen habe ich zu diesem Ort navigiert (drücken Sie CMD + UMSCHALT + K, um den folgenden Pfad einzufügen) (durch den Finder).

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

Und kopierte den 10.0(14A5339a)Ordner, der das Entwickler-Disk-Image enthält. Ich habe es dann eingefügt

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

BEARBEITEN: Ich verwende Xcode7 (Version 7.3.1-7D1014), iOS 10 Public Beta 6 (14A5345a) - dies wird am 19. August 2016 veröffentlicht

Rak Appdev
quelle
Nett! Welche Versionen von Xcode verwenden Sie? Es sieht so aus, als würden Sie sowohl Xcode als auch Xcode Beta verwenden. Können Sie eine Version für beide hinzufügen?
Cullub
1
Diese Lösung hat bei mir funktioniert! Ich musste zu xcode 7.3.1 zurückkehren, um an einem alten Projekt zu arbeiten, das auf swift 2.x <2.3 steckt (aufgrund von Bibliotheksabhängigkeiten von Drittanbietern, die nicht mit schnelleren Versionen kompatibel sind), und ich kann jetzt auf mein iPhone bauen iOS 10.2, danke !!
Gewächshaus
2

Obwohl das Kopieren des Ordners mit dem Disk-Image immer noch der beste Weg ist, hatte ich keine Zeit, den neuesten Xcode herunterzuladen, um den Disk-Image-Ordner zu erhalten. Deshalb habe ich die App im Grunde genommen archiviert und mit der Option zum Bereitstellen für die Entwicklung exportiert exportiert. Installieren Sie es dann mit der iTunes App auf dem Testgerät.

In meinem Fall hatte ich Xcode 8.0, der auf einem 10.2.1 iOS-Gerät bauen wollte.

Geben Sie hier die Bildbeschreibung ein

TheFuquan
quelle
1

Pascal & Fanruten haben recht.

getestet am 12. August, Xcode Version 7.3.1 (7D1014) UND iOS 10.0 (14A5309d) auf dem iPhone6 ​​Plus.

Ich habe wie vorgeschlagen einen symbolischen Link erstellt (Pfad ist etwas anders ... siehe unten), funktioniert aber mit dem Link zu Xcode Version 8.0 Beta 4 (8S188o).

nur der Vollständigkeit halber:

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
ingconti
quelle
Für symbolische Verknüpfung von XCode 8 Beta 5 zu 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

Tymacs Antwort hat fast für mich funktioniert. Anstatt zu kopieren und einzufügen, hatte ich zwei Finder-Fenster geöffnet und dann den iOS 10-Ordner in den Xcode 7-Ordner gezogen. Sobald es in Xcode 7 ist, öffnen Sie den Ordner und stellen Sie sicher, dass es eine dmg-Datei gibt.

Zuvor hatte ich eine Kopie des iOS 10-Geräteunterstützungsordners auf meinen Desktop gezogen und dann in den Xcode 7-Ordner kopiert. Das schien die dmg-Datei zu entpacken, also beschwerte sich Xcode 7 immer noch. Muss eine dmg-Datei im Ordner sein.

D. Rothschild
quelle
0

Eine Warnung. Ich habe versucht, XCode 7.3.1 mit ios 10-Bildern aus XCode 8.1 für das Cordova-Projekt zu verwenden (es funktioniert), hatte jedoch Probleme mit Push-Benachrichtigungsberechtigungen (verschiedene Setups für ios 8/9/10). Ich bin mir nicht sicher, aber es scheint mir, dass einige Compiler-Direktiven in 7.3.1 fehlen

3176243
quelle
0

Hier ist es für XCode 9 und 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
Bryan
quelle
Funktioniert das tatsächlich für Sie? Ich kann keinen iOS 11 Simulator in Xcode 8 hinzufügen.
Ortwin Gentz
@OrtwinGentz ​​Sehen Sie, ob Sie den Simulator in Xcode 9 starten können - wenn er ausgeführt wird, sollten Sie in der Lage sein, Xcode 9 zu schließen und Ihre App auf dem Simulator von XC 8 aus zu debuggen.
Bryan
Ich kann den Simulator sicher in Xcode 9 starten. Aber ich kann nicht mit Xcode 8 (gegen das iOS 10 SDK) bauen und auf dem iOS 11 Simulator debuggen.
Ortwin Gentz
Funktioniert diese Methode auf Xcode 7.3- und iOS 11-Geräten?
DHEERAJ
-1

meine zwei Cent für Xcode Version 11 Beta gegen Xcode 10 nach 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

So kann ich mein iPhone mit iOS 13 Beta in Xcode 10 verwenden.

Nach ln -s starten pls Xcode neu

ingconti
quelle