2016-06-29 12 views

risposta

16

utilizza MacOS Terminal, lanciare il primo simulatore:

  1. cd /Applications/Xcode.app/Contents/Developer/Applications
  2. open -n Simulator.app
  3. cd <your react native project>
  4. react-native run-ios

Ora, lanciare 2 ° simulatore:

  1. cd /Applications/Xcode.app/Contents/Developer/Applications
  2. open -n Simulator.app
  3. clic su "OK" quando si ottieni "Impossibile avviare il dispositivo nello stato corrente"
  4. Modificare il simulatore in modo che sia diverso dal primo simulatore (ad es. Hardware -> Dispositivo -> iPhone 6s)
  5. cd <react-native project>
  6. react-native run-ios --simulator "iPhone 6s" (o qualsiasi altra cosa simulatore scelto al punto 8).

Nota: nell'ultimo passaggio, è possibile ignorare l'uscita del terminale poiché indica che si sta avviando utilizzando il primo hardware del simulatore. Infatti, sta lanciando nel 2 ° simulatore (come desiderato).

+0

ho seguito i tuoi passi, al punto 10 si installa l'applicazione in primo simulatore anche cercato di utilizzare --simulator, non ha funzionato troppo ho Pod lima .xcworkspace. Pensi che questo sia il motivo? react-native run-ios "iPhone 5s" Found Xcode workspace test.xcworkspace Launching iPhone 6 (9.3)... Masteryo

+0

Non sono sicuro: non ho dovuto utilizzare gli spazi di lavoro finora con la mia app React. Potresti scaricare un esempio di applicazione React Native che usa il progetto Xcode per confermare che sei in grado di ottenere due simulatori usando il metodo sopra? – Wookiem

+0

Questo ha funzionato per me – FuzzyTree

0

Questa non è la risposta diretta alla tua domanda, ma penso che dia una soluzione migliore rispetto all'esecuzione di diversi simulatori. È possibile controllare il seguente lib chiamato ScreenSwitcher.

Fondamentalmente si utilizza lo stesso simulatore, nel nostro caso solo iPhone 6 plus ed è possibile controllare e ispezionare direttamente qualsiasi altra schermata più piccola. Trovo che questo approccio sia più efficiente e più veloce.

ScreenSwitcher

+1

Funzionerebbe se tutto ciò che desideri è eseguire l'interfaccia utente su varie dimensioni dello schermo. Quando l'obiettivo è eseguire il debug dell'interazione di più dispositivi, questa non è una soluzione. –

+1

Sì, è corretto. Se è necessario eseguire più simulatori contemporaneamente, è necessario aprire più debugger su porte diverse allo stesso tempo. –