2014-04-24 8 views

Antwort

65

I die Syntax in RipTheJacker Antwort erwähnt verwenden, um das Gerät zu wählen zu emulieren, das heißt:

012.
ionic emulate ios --target="iPhone-4s" 

jedoch um herauszufinden, was die zur Verfügung stehenden Emulationen sind ich dies auszuführen:

ios-sim showdevicetypes 

Dieser Befehl eine Liste zurück, so etwas wie dieses:

iPhone-4s, 8.4 
iPhone-5, 8.4 
iPhone-5s, 8.4 
iPhone-6-Plus, 8.4 
iPhone-6, 8.4 
iPad-2, 8.4 
iPad-Retina, 8.4 
iPad-Air, 8.4 
Resizable-iPhone, 8.4 
Resizable-iPad, 8.4 
+3

Danke, dieser Befehl zum Anzeigen von Gerätetypen war eine große Hilfe! –

+4

Oder versuchen Sie './ plattformen/ios/cordova/lib/list-emulator-images' aus der Wurzel Ihres Cordova-Projekts :) –

43
cordova emulate ios --target="TARGET" 

oder

ionic emulate ios --target="TARGET" 

Wo TARGET eines von:. IPad, iPhone, iPad (Retina), iPhone (Retina 3,5 Zoll), iPhone (Retina 4-inch)

Eg: ionic emulate ios --target="iPhone-5"

+0

Es nur den 'cordova' Befehl getan werden kann? Oder funktioniert das, wenn ich den 'ionic' Befehl verwende? Z.B. 'ionic emulieren ios --target =" TARGET "'. – Mauker

+0

Großartig, "ionic emulate ios --target = 'iPhone-5'" funktionierte für mich .. –

2

Ich habe mit worden das gleiche Problem seit ionic2. Sieht so aus, als ob ionic/cordova ios-sim ignoriert und seine eigenen Emulationslaufzeiten zuweist, beziehen Sie sich auf Ihre installierte Plattform zB ios (plattformen/ios/cordova/lib/run.js):

Um die verfügbaren Simulatoren anzuzeigen, führen Sie

ios-sim showdevicetypes

/ validate target device for ios-sim 
// Valid values for "--target" (case sensitive): 
var validTargets = ['iPhone-4s', 'iPhone-5', 'iPhone-5s', 'iPhone-6-Plus', 'iPhone-6', 
    'iPhone-6s-Plus', 'iPhone-6s', 'iPad-2', 'iPad-Retina', 'iPad-Air', 'iPad-Air-2', 
    'iPad-Pro', 'Resizable-iPhone', 'Resizable-iPad']; 
if (!(runOptions.device) && runOptions.target && validTargets.indexOf(runOptions.target.split(',')[0]) < 0) { 
    return Q.reject(runOptions.target + ' is not a valid target for emulator'); 
} 

Solange Sie den richtigen Simulator unter der Liste laufen Sie in Ordnung sein sollte:

ionische emulieren ios --target = "iPhone-6s-Plus, 10.2"

+0

Haben Sie diesen nützlichen Tipp gefunden, wenn Sie Ihren Simulator zur Liste hinzufügen möchten, befolgen Sie einfach die Anweisungen https: // dzone .com/articles/wichtig-note-for-targeting-ios-emulators-in-cord –

+0

Danke für die Angabe der iOS-Version. – iphondroid

+1

Funktioniert bei mir nicht in der neuesten Ionic Version. Zuerst listete ich alle verfügbaren Geräte mit 'ionic cordova emulieren ios --list' Als nächstes wählte ich einen aus der Liste und versuchte' ionic cordova emulieren ios --target = "iPhone-6, 10.3" der Build abgestürzt mit Fehler .... Aber 'Ionic Cordova emulieren iOS - Ziel =" iPhone-6 "' funktioniert und öffnet Emulator mit iOS 8.4 Wie starte ich den Emulator mit der zert-Version von iOS? –

6

Januar 2018 Update

Run

ionic cordova run ios --target="iPhone-X" 

Sie iPhone-X durch was auch immer aus der kommt ersetzen Liste

von Ihrem Stammordner des Projekts (die wie in Tod Thomson's comment)

Für mich ist die Liste ist

iPhone-5s, 11.2 
iPhone-6, 11.2 
iPhone-6-Plus, 11.2 
iPhone-6s, 11.2 
iPhone-6s-Plus, 11.2 
iPhone-7, 11.2 
iPhone-7-Plus, 11.2 
iPhone-SE, 11.2 
iPad-Air, 11.2 
iPad-Air-2, 11.2 
iPad--5th-generation-, 11.2 
iPad-Pro--12-9-inch---2nd-generation-, 11.2 
iPad-Pro--10-5-inch-, 11.2 
Apple-TV-1080p, tvOS 11.2 
Apple-TV-4K-4K, tvOS 11.2 
Apple-TV-4K-1080p, tvOS 11.2 
iPhone-8, 11.2 
iPhone-8-Plus, 11.2 
iPhone-X, 11.2 
iPad-Pro--9-7-inch-, 11.2 
iPad-Pro, 11.2 
Apple-Watch-38mm, watchOS 4.2 
Apple-Watch-42mm, watchOS 4.2 
Apple-Watch-Series-2-38mm, watchOS 4.2 
Apple-Watch-Series-2-42mm, watchOS 4.2 
Apple-Watch-Series-3-38mm, watchOS 4.2 
Apple-Watch-Series-3-42mm, watchOS 4.2 
+0

Perfekt. Danke, Mann –