Xcode 6 – 从命令行启动模拟器
我想从命令行启动iPhone模拟器。
直到现在我一直在使用下面的命令
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator -SimulateDevice
-SimulateDevice用于启动特定的设备types
现在用Xcode 6的path和应用程序已经改变
/Applications/Xcode.app/Contents/Developer/Applications/iOS Simulator.app/Contents/MacOS/iOS Simulator
但可悲-SimulateDevice选项现在不工作。 我可以启动模拟器,但没有选项来指定启动哪一个
任何人发现任何替代这与Xcode 6?
find了一种方法来实现我想要的。
苹果已经推出了Xcode 6的一个有趣的工具!
simctl
simclt允许你控制正在运行的模拟器。
运行xcrun simctl
以获取可用子命令的列表。 很多新的select玩弄。
现在做我想做的事,这里是启动模拟器的命令:
xcrun instruments -w "iPhone 5 (8.0 Simulator)"
-w是提供设备types并获取可用设备的列表。
只要执行这个:
xcrun instruments -s
启动模拟器后,您可以使用simctl
来控制它
要安装你的应用程序:
xcrun simctl install booted <app path>
要启动应用程序:
xcrun simctl launch booted <app identifier>
希望这可以帮助。
使用Xcode 6,如果你想让iOS Simulator.app在启动时启动一个特定的设备,你可以从命令行运行:
open -a "iOS Simulator" --args -CurrentDeviceUDID <DEVICE UDID>
在那里你可以找出你想要启动的设备的UDID:
xcrun simctl list
随着Xcode 7,应用程序被重命名为Simulator.app,所以你应该相应地更新上面的:
open -a Simulator --args -CurrentDeviceUDID <DEVICE UDID>
对于xcode 7:
open /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app --args -CurrentDeviceUDID <DeviceUDID>
从xcrun simctl list
获取您的模拟器udid
您可以使用-w标志指定硬件和iOS版本。 格式是
instruments -w "simulator-version"
例如:
instruments -w "iPhone Retina (3.5-inch) - Simulator - iOS 7.1"
。
您将通过使用instruments -w help
命令获得可用的hardvare-iOS组合。
运行这个命令。 该应用程序将重新启动,然后进行更改。 不需要重新构build它。
ios-sim "launch" "/Library/WebServer/Documents/testapp/build/iphone/build/Debug-iphonesimulator/test.app" "--devicetypeid" "iPad-2" "--exit";
对于devicetypeid列表:
ios-sim showdevicetypes
从Xcode 7.3.1开始
设备列表中一个~/Library/Developer/CoreSimulator/Devices/device_set.plist
格式: ~/Library/Developer/CoreSimulator/Devices/device_set.plist
Root DefaultDevices com.apple.CoreSimulator.SimRuntime.iOS-8-4 com.apple.CoreSimulator.SimDeviceType.iPad-Retina : AB335FAF-E3E3-4AE9-A0AF-D1C6AEB5FBD4
然后,您要运行(打开)您的模拟器应用程序,并确保应用程序的新实例启动。
该应用程序在这里: /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app
而你使用的格式是这样的:
open -n -a <SimulatorPath> --args -CurrentDeviceUDID <SimDeviceTypeUDID>
所以,如果我想要启动上面的模拟器,我会这样做。
open -n -a /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app --args -CurrentDeviceUDID AB335FAF-E3E3-4AE9-A0AF-D1C6AEB5FBD4
该死的! 我只是testing它,它适用于Mac OS 10.11.6。 现在下一个技巧是告诉模拟器打开我们安装的应用程序。 我还没有呢。 希望这可以帮助。 感谢https://stackoverflow.com/users/726106/jeremy-huddleston-sequoia的详细解释。;