Quand j'exécute cette commande:
react-native run-ios
Mon application s'exécute par défaut sur le simulateur iPhone6:
Found Xcode project RN.xcodeproj
Launching iPhone 6 (9.2)...
Comment puis-je exécuter l'application sur un autre simulateur (tel que iPhone5s) par défaut?
Spécifiez un simulateur à l'aide de l'indicateur --simulator
.
Voici les appareils disponibles pour iOS 12.0:
react-native run-ios --simulator="iPhone 5s"
react-native run-ios --simulator="iPhone 6"
react-native run-ios --simulator="iPhone 6 Plus"
react-native run-ios --simulator="iPhone 6s"
react-native run-ios --simulator="iPhone 6s Plus"
react-native run-ios --simulator="iPhone 7"
react-native run-ios --simulator="iPhone 7 Plus"
react-native run-ios --simulator="iPhone 8"
react-native run-ios --simulator="iPhone 8 Plus"
react-native run-ios --simulator="iPhone SE"
react-native run-ios --simulator="iPhone X"
react-native run-ios --simulator="iPhone XR"
react-native run-ios --simulator="iPhone XS"
react-native run-ios --simulator="iPhone XS Max"
react-native run-ios --simulator="iPad Air"
react-native run-ios --simulator="iPad Air 2"
react-native run-ios --simulator="iPad"
react-native run-ios --simulator="iPad Pro"
react-native run-ios --simulator="iPad Pro"
react-native run-ios --simulator="iPad Pro"
react-native run-ios --simulator="iPad Pro"
react-native run-ios --simulator="iPad"
Répertoriez tous les appareils iOS disponibles:
xcrun simctl list devices
Il n'y a actuellement aucun moyen de définir une valeur par défaut.
Vous pouvez également utiliser npm pour cela en ajoutant une entrée à l’élément scripts
de votre fichier package.json
. Par exemple.
"launch-ios": "react-native run-ios --simulator \"iPad Air 2\""
Ensuite, pour utiliser ceci: npm run launch-ios
Il y a un paramètre de projet si vous traquez:
{project}/node_modules/react-native/local-cli/runIOS/runIOS.js
Au sein de il y a quelques options sous module.exports
y compris:
options: [{
command: '--simulator [string]',
description: 'Explicitly set simulator to use',
default: 'iPhone 7',
}
Le mien était la ligne 231, définissez-le simplement sur un simulateur installé valide et exécutez react-native run-ios
. Il sera exécuté par défaut sur ce simulateur.
1) Renommez votre simulateur, Si simulateur portant le même nom mais une version iOS différente
Xcode -> Window -> Devices and Simulators -> Simulators.
2) Ouvrez votre dossier de projet natif de réaction
3) Éditez package.json
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest",
"flow": "node_modules/.bin/flow",
"start-iphone6": "react-native run-ios --simulator \"iPhone 6 11.3\""
}
4) npm run start-iphone6
Voici un nouveau chemin pour changer de simulateur iOS, il vous suffit de changer
default: 'iPhone 6' or something else
Chemin:
<project_root>/node_modules/@react-native-community/cli/build/commands/runIOS/runIOS.js
J'ai développé l'outil CLI pour cela. Vous pouvez simplement taper "rndcli" .et sélectionner le périphérique
J'ai eu un problème avec XCode 10.2 en spécifiant le numéro de version correct du simulateur iOS, donc utilisé:
react-native run-ios --simulator='iPhone X (com.Apple.CoreSimulator.SimRuntime.iOS-12-1)'
Comme Ian L m'a répondu, j'utilise également NPM pour gérer mes scripts.
Exemple:
{
"scripts": {
"ios": "react-native run-ios --simulator=\"iPad Air 2\"",
"devices": "xcrun simctl list devices"
}
}
De cette façon, je peux rapidement obtenir ce dont j'ai besoin:
npm run devices
npm run ios